我希望在解決這個問題上有任何幫助,或者至少在哪裏尋找解決辦法。PhoneGap navigator.compass.getCurrentHeading在iPhone上多次調用
我所要調用的iPhone navigator.compass.getCurrentHeading(succ,fail),每當設備移動時都會調用成功函數。在XCode調試日誌中,我看到很多條目navigator.compass.setHeading正在爲每個移動生成的調用。如果我嘗試再次輪詢標題數據 - 請求就會掛起。下面的代碼:
function onBodyLoad() {
if (typeof navigator.device == "undefined") {
document.addEventListener("deviceready", onDeviceReady, false);
} else {
onDeviceReady();
}
}
function succ(heading) {
alert("compass " + heading);
}
function fail() {
alert('fail');
}
function onDeviceReady() {
navigator.compass.getCurrentHeading(succ, fail);
}
這真是奇怪的行爲,如我所料getCurrentHeading是剛剛調用一次,並返回一個結果,而不是事件的不可阻擋的亂舞。
我使用PhoneGap 1.0.0。 Android上的相同代碼完美工作。我已經刪除了所有的自定義JS代碼,以防止衝突的可能性。