当我运行我的cordova android应用程序时,我遇到了一个随机发生的问题。基本上,“设备”有时是空的,有时则不是。我不知道为什么会这样,这是我代码的第一部分:
app.js
app = {
// deviceready Event Handler
onDeviceReady: function() {
try
{
var devicePlatform = device.platform;
var deviceVersion = device.version;
}
catch(e)
{
alert("Error: "+e)
}
....
}
}
的index.html
....
</div>
<script src="cordova.js"></script>
<script src="js/libs/openfb.js"></script>
<script src="js/app.js"></script>
<script>
$(document).on("mobileinit", function() {
$.mobile.ajaxEnabled = true;
$.mobile.linkBindingEnabled = true;
$.mobile.defaultPageTransition = "fade";
$.mobile.phonegapNavigationEnabled = true;
$.mobile.allowCrossDomainPages = true;
});
// init application
$(window).load(function() {
$(document).bind('deviceready', app.onDeviceReady());
});
</script>
</body>
</html>
设备插件已经过时,所以我获得了新版本0.3.0,但是bug仍然存在。任何提示?
答案 0 :(得分:1)
您的应用应该在真实手机上运行,而不是在模拟器上运行。
我认为你只在Chrome上运行app。
答案 1 :(得分:0)
请尝试绑定监听器
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
var element = document.getElementById('deviceProperties');
element.innerHTML = 'Device Model: ' + device.model + '<br />' +
'Device Cordova: ' + device.cordova + '<br />' +
'Device Platform: ' + device.platform + '<br />' +
'Device UUID: ' + device.uuid + '<br />' +
'Device Version: ' + device.version + '<br />';
}
了解详情
希望这有帮助!
干杯!