文章导读:
- 1、如何调用百度地图API实现手机自动定位
- 2、android 使用百度api怎么快速定位
- 3、当前车载GPS定位数据是否有开放API
- 4、百度地图API怎样实现拖动标注实时更新位置数据
- 5、网页内如何调用开放的api接口实现用户定位
- 6、怎么使用百度地图api实现定位
如何调用百度地图API实现手机自动定位
1、登录百度地图api,地址:
2、设置你的地理位置
3、简单设置下地图功能,也可以不设置。
4、设置地图信息标注
5、设置以后查看效果
6、获取代码,以上都设置好了以后,就可以获取地图代码了
7、复制地图代码插入到网站的页面源文件中
android 使用百度api怎么快速定位
在下载页面下载最新的库文件。将liblocSDK2.4.so文件拷贝到libs/armeabi目录下。将locSDK2.4.jar文件拷贝到工程根目录下,并在工程属性-Java Build Path-Libraries中选择“Add JARs”,选定locSDK2.4.jar,确定后返回。这样您就可以在程序中使用百度定位API了。
设置AndroidManifest.xml
为区分2.3版本service,需要将manifest file中的 intent filter声明为com.baidu.location.service_v2.4 在application标签中声明service组件
service android:name="com.baidu.location.f" android:enabled="true" android:process=":remote" android:permission="android.permission.BAIDU_LOCATION_SERVICE" intent-filter action android:name="com.baidu.location.service_v2.4"/action /intent-filter/service声明使用权限
permission android:name="android.permission.BAIDU_LOCATION_SERVICE"/permissionuses-permission android:name="android.permission.BAIDU_LOCATION_SERVICE"/uses-permissionuses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/uses-permissionuses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/uses-permissionuses-permission android:name="android.permission.ACCESS_WIFI_STATE"/uses-permissionuses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/uses-permissionuses-permission android:name="android.permission.CHANGE_WIFI_STATE"/uses-permissionuses-permission android:name="android.permission.READ_PHONE_STATE"/uses-permissionuses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/uses-permissionuses-permission android:name="android.permission.INTERNET" /uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/uses-permissionuses-permission android:name="android.permission.READ_LOGS"/uses-permissionimport相关类
import com.baidu.location.BDLocation;import com.baidu.location.BDLocationListener;import com.baidu.location.LocationClient;import com.baidu.location.LocationClientOption;import com.baidu.location.BDNotifyListener;//假如用到位置提醒功能,需要import该类功能类的使用
初始化LocationClient类
此处需要注意:LocationClient类必须在主线程中声明。需要Context类型的参数。
public LocationClient mLocationClient = null;public BDLocationListener myListener = new MyLocationListener(); public void onCreate() { mLocationClient = new LocationClient(this); //声明LocationClient类 mLocationClient.registerLocationListener( myListener ); //注册监听函数}实现BDLocationListener接口
BDLocationListener接口有2个方法需要实现:
1.接收异步返回的定位结果,参数是BDLocation类型参数。
2.接收异步返回的POI查询结果,参数是BDLocation类型参数。
public class MyLocationListenner implements BDLocationListener { @Override public void onReceiveLocation(BDLocation location) { if (location == null) return ; StringBuffer sb = new StringBuffer(256); sb.append("time : "); sb.append(location.getTime()); sb.append("\nerror code : "); sb.append(location.getLocType()); sb.append("\nlatitude : "); sb.append(location.getLatitude()); sb.append("\nlontitude : "); sb.append(location.getLongitude()); sb.append("\nradius : "); sb.append(location.getRadius()); if (location.getLocType() == BDLocation.TypeGpsLocation){ sb.append("\nspeed : "); sb.append(location.getSpeed()); sb.append("\nsatellite : "); sb.append(location.getSatelliteNumber()); } else if (location.getLocType() == BDLocation.TypeNetWorkLocation){ sb.append("\naddr : "); sb.append(location.getAddrStr()); } logMsg(sb.toString()); }public void onReceivePoi(BDLocation poiLocation) { if (poiLocation == null){ return ; } StringBuffer sb = new StringBuffer(256); sb.append("Poi time : "); sb.append(poiLocation.getTime()); sb.append("\nerror code : "); sb.append(poiLocation.getLocType()); sb.append("\nlatitude : "); sb.append(poiLocation.getLatitude()); sb.append("\nlontitude : "); sb.append(poiLocation.getLongitude()); sb.append("\nradius : "); sb.append(poiLocation.getRadius()); if (poiLocation.getLocType() == BDLocation.TypeNetWorkLocation){ sb.append("\naddr : "); sb.append(poiLocation.getAddrStr()); } if(poiLocation.hasPoi()){ sb.append("\nPoi:"); sb.append(poiLocation.getPoi()); }else{ sb.append("noPoi information"); } logMsg(sb.toString()); }}设置参数
设置定位参数包括:定位模式(单次定位,定时定位),返回坐标类型,是否打开GPS等等。eg:
LocationClientOption option = new LocationClientOption();option.setOpenGps(true);option.setAddrType("detail");option.setCoorType("gcj02");option.setScanSpan(5000);option.disableCache(true);//禁止启用缓存定位option.setPoiNumber(5); //最多返回POI个数 option.setPoiDistance(1000); //poi查询距离 option.setPoiExtraInfo(true); //是否需要POI的电话和地址等详细信息 mLocClient.setLocOption(option);发起定位请求
发起定位请求。请求过程是异步的,定位结果在上面的监听函数onReceiveLocation中获取。
if (mLocClient != null mLocClient.isStarted()) mLocClient.requestLocation();else Log.d("LocSDK_2.0_Demo1", "locClient is null or not started");发起POI查询请求
发起POI查询请求。请求过程是异步的,定位结果在上面的监听函数onReceivePoi中获取。
if (mLocClient != null mLocClient.isStarted()) mLocClient.requestPoi();位置提醒使用
位置提醒最多提醒3次,3次过后将不再提醒。 假如需要再次提醒,或者要修改提醒点坐标,都可通过函数SetNotifyLocation()来实现。
//位置提醒相关代码mNotifyer = new NotifyLister();mNotifyer.SetNotifyLocation(42.03249652949337,113.3129895882556,3000,"gps");//4个参数代表要位置提醒的点的坐标,具体含义依次为:纬度,经度,距离范围,坐标系类型(gcj02,gps,bd09,bd09ll)mLocationClient.registerNotify(mNotifyer);//注册位置提醒监听事件后,可以通过SetNotifyLocation 来修改位置提醒设置,修改后立刻生效。
//BDNotifyListner实现public class NotifyLister extends BDNotifyListener{ public void onNotify(BDLocation mlocation, float distance){ mVibrator01.vibrate(1000);//振动提醒已到设定位置附近 }}
//取消位置提醒mLocationClient.removeNotifyEvent(mNotifyer);
当前车载GPS定位数据是否有开放API
像滴滴等汽车公司,有些是用传统的手机GPS,还有些专业些的公司会选择GPS定位器,因为定位器比手机GPS多很多的功能
车载GPS定位目前没有开放的平台提供数据,因为这些都属于个人或安装公司的数据不对外开放的。当然如果你们公司需要安装GPS,那就会有专业的GPS风控平台像五星风控,有电脑,微信,手机APP三种查车方式。登陆后通过平台可以查找相对应的车辆的实时定位,历史轨迹等数据
百度地图API怎样实现拖动标注实时更新位置数据
如何在页面中调用百度地图,直接在你想要插入的页面上调用百度地图代码即可
百度地图调用API地址:
1.设置定位中心:直接搜索你要找的位置即可。
调用百度地图代码
2.设置地图:设置地图样式,如大小,显示,功能等。
3.添加标注:添加你要标注的地方,自定义坐标位置
4.获取代码:点击获取代码即可,在你要插入百度地图的地方出入百度地图代码
只要插入!--引用百度地图API--部分的代码就行。
网页内如何调用开放的api接口实现用户定位
网页内调用开放的api接口实现用户定位的步骤如下:以百度地图为例
1、百度直接搜【百度地图调用】,点击出现的第二个网站,进入这个网站即可;
2、进入这个网站后,我们首先得输入自己需要定位的地点。比如我们输入【上海】这个城市,输入后点击【查找】选项;
3、经过上一步的操作,我们已经成功地定位到【上海】这个城市了。然后我们点击第二步【设置地图】;
4、在【设置地图】里面有一些关于这个地图本身显示的一些设置选项,比如可以设置地图的【尺寸大小】,地图的【添加按钮】和地图的【状态】;;
5、然后我们开始给我们的地图添加【地图标注】,点击这个【小棒子】图标,然后在我们需要标注的地方鼠点击一下,输入需要修改的名称和备注,然后点击【保存】按钮;
6、经过上面的一些操作后,我们可以看到我们自己添加的地理位置所显示出的效果了;
7、然后我们点击底部的【获取代码】,再点击【复制代码】即可;
8、在vs2012里面新建一个【html】文件,然后把我们刚刚复制过来的代码直接粘贴到里面。然后在vs2012里面选择使用【谷歌浏览器】查看这个【html】文件里面的内容;;
9、这个是在【谷歌浏览器】里面运行出来的,在本地的百度地图显示出地理位置的效果图。可以看到,我们已经成功地调用了百度地图的API接口了。
怎么使用百度地图api实现定位
在百度地图的右上角,点击“地图API”。
在地图API页面,把鼠标移动到“工具”菜单项,在下拉菜单中选择“坐标拾取工具”。
比如在搜索栏输入“百度大厦”点击搜索,就会在地图上出现相应的标记,点击你要找的某一个,就能看到相应的坐标。
同理,把找到的坐标输入到搜索栏,把后面“坐标反查”给勾上,点击搜索,就会对应的坐标打上标记,同时会有相应地址在最右边。
同时,把鼠标在地图上滑行,就可以看到,鼠标滑到每一个地方,都会对应显示坐标。
sb.append("\nlatitude : "); sb.append(location.getLatitude()); sb.append("\nlontitude :