出现此问题比较坑,我也出现了,反复测试,在排除网络环境的情况下,还是出现此问题。后来终于弄好了,结果真的比较坑
我用的是 locSDK_4.2.jar ,对应的so文件是 liblocSDK4d.so,这些都可以在官网下载
问题其实主要在 AndroidManifest.xml 配置上
注意以下几点
1.服务要配置 <service <serviceandroid:name="com.baidu.location.f"android:enabled="true"android:process=":remote" ><intent-filter><action android:name="com.baidu.location.service_v2.2" ></action></intent-filter></service> 2.apikey要配置,
<meta-dataandroid:name="com.baidu.lbsapi.API_KEY"android:value="xxxxxxxxxxxxxxxx" />以上二点大家都应做到了。
3. 配置权限
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" > </uses-permission><uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" > </uses-permission><uses-permission android:name="android.permission.ACCESS_WIFI_STATE" > </uses-permission><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" > </uses-permission><uses-permission android:name="android.permission.CHANGE_WIFI_STATE" > </uses-permission><uses-permission android:name="android.permission.READ_PHONE_STATE" > </uses-permission><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" > </uses-permission><uses-permission android:name="android.permission.INTERNET" /><uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" > </uses-permission><uses-permission android:name="android.permission.READ_LOGS" > </uses-permission><uses-permission android:name="android.permission.VIBRATE" /><uses-permission android:name="android.permission.WAKE_LOCK" /><uses-permission android:name="android.permission.WRITE_SETTINGS" />上面的权限配置按着配置就可以了。
总结一下,,之前我就差
<uses-permission android:name="android.permission.READ_PHONE_STATE" > </uses-permission>
这行,读取电话状态的权限。
就导致了定位结果是4.9E -324的问题,害得我搞了半天,加上后就正常获得定位结果了;然后我去掉这行,结果又不正常了,可以得出结论,是这行影响到了定位的结果。
希望对遇到此问题的朋友给予帮助,少走弯路。至于定位与电话状态的读取有什么关系,我也不太明白。
在乎的是看风景的心情,旅行不会因为美丽的风景终止。