[目前插件已经支持到Phonegap 最新版本]
需要用到phonegap的定位功能,但是他的定位功能比较弱经常会出现超时情况。
最后根据百度的定位 写了以下的插件来实现定位,获取坐标和当前的地址。
【目前为最新的百度定位sdk】
导入库文件
在下载页面下载最新的库文件。将liblocSDK5.3.so文件拷贝到libs/armeabi目录下。将locSDK5.3.jar文件拷贝到工程 根目录下,并在工程属性->Java Build Path->Libraries中选择“Add JARs”,选定locSDK5.3.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”>
- </service>
声明使用权限
- <permission android:name=”android.permission.BAIDU_LOCATION_SERVICE”></permission>
- <uses-permission android:name=”android.permission.BAIDU_LOCATION_SERVICE”></uses-permission>
- <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>
导入java文件。 PGBdLocation.java 注册插件: 在config.xml文件里面添加 <feature name="PGBdLocation"> <param name="android-package" value="com.xhuayi.dgoula.PGBdLocation" /> </feature> 复制location.js文件到www文件夹。 在html里面引入location.js文件 调用方法:
function dingwei() {
window.plugins.PGBdLocation.getlocation(function(data){
var loc = JSON.parse(data)
alert(“经纬度:” + loc.Latitude + “,” + loc.Longitude+” 地址:”+loc.AddrStr+” 城市/地区:”+loc.City+”,”+loc.District);
}, function (error) {
alert(error);
});
}function stopdingwei() {
window.plugins.PGBdLocation.stoploc(
function(data){
alert(data);
}, function (error) {
alert(error);
});
}
转载请注明:夜阑小雨 » phonegap定位插件–百度api定位