Android设备上的PhoneGap无法使用!
我正在使用phoneGap的移动应用程序工作。我正在显示deviceInfo并且它不适用于Android模拟器!但适用于BlackBerry模拟器。我正在使用Dreamweaver cs 5.5。这个问题的任何解决方案?Android设备上的PhoneGap无法使用!
这里是我的代码:
// invoked when device is ready
function deviceInfo() {
document.getElementById('window.device.platform').innerHTML = 'window.device.platform = ' + window.device.platform;
document.getElementById('window.device.version').innerHTML = 'window.device.version = ' + window.device.version;
document.getElementById('window.device.uuid').innerHTML = 'window.device.uuid = ' + window.device.uuid;
document.getElementById('window.device.phonegap').innerHTML = 'window.device.phonegap = ' + window.device.phonegap;
navigator.network.isReachable("phonegap.com", function(reachability) {
var states = {};
states[NetworkStatus.NOT_REACHABLE] = 'No network connection';
states[NetworkStatus.REACHABLE_VIA_CARRIER_DATA_NETWORK] = 'Carrier data connection';
states[NetworkStatus.REACHABLE_VIA_WIFI_NETWORK] = 'WiFi connection';
document.getElementById('networkStatus').innerHTML = 'isReachable = ' + states[reachability];
},
{ isIpAddress: false });
}
// invoked when application is resumed (brought to foregroud)
function doResume() {
console.log('doResume()');
}
// invoked when application is paused (sent to background)
function doPause() {
console.log('doPause()');
}
// register PhoneGap event listeners when DOM content loaded
function init() {
console.log('init()');
document.addEventListener("deviceready", deviceInfo, true);
document.addEventListener("resume", doResume, false);
document.addEventListener("pause", doPause, false);
}
function unload() {
console.log('unload()');
}
function fail(error) {
navigator.notification.alert(error, null, "Error");
}
在我的HTML:<body onload="init()" onunload="unload()">
确保"<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />"
出现在AndroidManifest.xml中。
这解决了我的问题,除了做这个其他帖子的建议:http://www.philliprhodes.com/content/phonegap-deviceready-not-called-android – 2011-07-19 18:35:34
确保科尔多瓦脚本的名称拼写是否正确: 它可以读取
<script type="text/javascript" charset="utf-8" src="cordova-1.x.x.js"></script>
它应该阅读:
<script type="text/javascript" charset="utf-8" src="cordova-1.5.0.js"></script>
为我工作。 – mabounassif 2012-04-01 21:10:30
1.x.x应该基于...资产/ www中的.js的名称在撰写本文时,1.5.0是正确的,但检查设置项目时使用的js文件。 – speaker 2012-04-03 23:37:17
我可以摆脱这个问题时,我发现了,我的cordova.js和cordova.jar文件的cordova版本号不匹配。
从同一个cordova版本得到这两个版本为我固定。 这在muy方面是一个耗时且愚蠢的错误。
您的JavaScript在Android 2.2模拟器上运行正常。也许你应该展示足够的HTML来重现问题。 – 2011-05-27 21:19:39
这是我的!它不适用于我的。你是通过Dreamweaver运行你的模拟器吗? – 2011-05-30 20:12:47
我从ADT运行模拟器。我没有Dreamweaver。 – 2011-05-30 20:14:19