1、在AndroidManifestxml文件中加上
<application>
<activity></activity>
<service
android:name="combaidulocationf"
android:enabled="true"
android:process=":remote" >
</service>
</application>
2、locClient = new LocationClient(getApplicationContext()); 要用getApplicationContext() 获取主程序的context,而不是单个activity的 context,就可以定位了
Android平台可以通过相应的API获取当前的位置,并对此进行分析,判断出是否为虚拟定位。具体的做法是,在获取到一组位置信息后,与上一次获取到的位置信息进行比较,如果发现获取到的位置信息不变,那么就可以判定使用了虚拟定位。
这种只有两种可能,一种可能是你的无线网络没有开数据流量没有打开,造成百度地图连不上网。
第二种就是你的GPS定位没有打开。
两种情况都有可能。
切记必须同时打开GPS定位和数据流量或者无线wifi。
在Eclipse中有一个很好的功能,就是比如我打开一个AActivity,左边的Project中,会自动的定位到当前文件所在的目录。但是在Android Studio中不会自动定位了。
那在Android Studio如何快速的定位到我当前打开的文件在哪个目录下,如图,我打开了MyActivity文件,这个文件在一长串的目录下,但是左边project栏并没有定位到我当前文件所在目录下:
那如何定位呢,看下图,点击带圆圈的小叉叉按钮,这个时候Project中就会定位到当前文件目录下了。
可以参考如下内容:
使用Android自带的LocationManager和Location获取位置的时候,经常会有获取的location为null的情况,并且 *** 作起来也不是很方便,在这个Demo里我使用了百度地图API中的定位SDK,可以一次性获取当前位置经纬度以及详细地址信息,还可以获取周边POI信息,同时可以设定位置通知点,当到达某一位置时,发出通知信息等方式来告知用户。jar包下载以及官方文档请参照:百度定位SDK,前提是需要注册百度开发者账号。
下面来看看定位的基本原理,目前,定位SDK可以通过GPS、基站、Wifi信号进行定位。基本定位流程如下图所示,当应用程序向定位SDK发起定位请求时,定位SDK会根据当前的GPS、基站、Wifi信息生成相对应的定位依据。然后定位SDK会根据定位依据来进行定位。如果需要,定位SDK会向定位服务器发送网络请求。定位服务器会根据请求的定位依据推算出对应的坐标位置,然后根据用户的定制信息,生成定位结果返回给定位SDK。
以上就是关于android百度地图api为什么不能自动定位当前位置全部的内容,包括:android百度地图api为什么不能自动定位当前位置、android如何判断是虚拟定位、android 百度地图怎么获取不到GPS定位等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)