以下来自Titanium示例的代码在iPhone上运行良好但在Android上运行不正常。有人可以告诉我如何编写它以便它也可以在Android 2.3.3上运行吗?如果我注释掉'Ti.Geolocation.getCurrentPosition'并且它是结束标记,则不会显示错误。
if (!_bounty.captured) {
var captureButton = Ti.UI.createButton({
title:L('capture'),
top:10,
height:30,
width:200
});
captureButton.addEventListener('click', function() {
if (Ti.Geolocation.locationServicesEnabled) {
Ti.Geolocation.accuracy = Ti.Geolocation.ACCURACY_BEST;
Ti.Geolocation.getCurrentPosition(function(e) { //*causes error on Android*
var lng = e.coords.longitude;
var lat = e.coords.latitude;
bh.db.bust(_bounty.id, lat, lng);
bh.net.bustFugitive(Ti.Platform.id, function(_data) {
Ti.UI.createAlertDialog({
message:_data.message
}).show();
//on android, give a bit of a delay before closing the window...
if (Ti.Platform.osname == 'android') {
setTimeout(function() {
win.close();
},2000);
}
else {
win.close();
}
});
});
}
else {
Ti.UI.createAlertDialog({
title:L('geo_error'),
message:L('geo_error_details')
}).show();
}
});
win.add(captureButton);
}
感谢任何帮助。
答案 0 :(得分:-1)
您必须使用Google API SDK才能在Android上使用地理位置