几周前我一直在使用phonegap,但是当我使用地理定位服务时发现问题。在浏览器中工作正常,但编译不(使用 build.honegap.com)。
在我的 config.xml 文件中,我有这样的内容:
Config package name, id, author, icon,etc...
<feature name="http://api.phonegap.com/1.0/device" />
<plugin name="Geolocation" value="CDVLocation" />
<plugin name="Geolocation" value="org.apache.cordova.GeoBroker" />
<feature name="http://api.phonegap.com/1.0/geolocation"/>
和一个 androidmanifest.xml 只有这个:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.me"
android:versionCode="1"
android:versionName="6.5" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="16" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
</manifest>
只是为了测试,我做了这个脚本(jquery),但只是在 chrome 浏览器上工作。总是触发错误函数(总是输入 if 语句,“Nav on”):
document.addEventListener("deviceready", onDeviceReady(), false);
function onDeviceReady(){
if (navigator.geolocation) {
alert('Nav on');
setTimeout(function(){
navigator.geolocation.getCurrentPosition(function(position){
alert("success " + position.coords.latitude + ' , ' + position.coords.longitude)
}, function(error){
alert('code: ' + error.code + '\n' +
'message: ' + error.message + '\n');
},
{enableHighAccuracy:true});
}, 600);
}else{
alert('Nav off');
}
};
知道我的代码有什么问题吗?我整个周末都在为此工作,一无所获
PS,我有一个三星 Galaxy s2 用于测试,对我的英语感到抱歉。
我忘了说错误消息说:
代码:2
消息:无法启动地理定位服务