一个简单的问题,我如何检查如果cordova是正确访问和工作在我的html索引文件在android。我试着搜索一些语法或代码,可以确认,但唉…
有一些函数我无法访问。比如navigator。connection。type给我的类型不是null。所以我想知道是否有什么方法可以检查。
谢谢. .
编辑1
$(document).one('pageinit', function(event) {
registerElementEvents();
validateFields();
// Check Internet Connection
checkConnection();
});
function checkConnection() {
//alert(window.top.navigator);
var objects = window.top.navigator;
for(var key in objects) {
var value = objects[key];
//alert(value);
}
if( !navigator.network )
{
// set the parent windows navigator network object to the child window
navigator.network = window.top.navigator.network;
}
// return the type of connection found
return ( (navigator.network.connection.type === "none" || navigator.network.connection.type === null ||
navigator.network.connection.type === "unknown" ) ? false : true );
}
检查的方法有很多你可以使用alert("your message");
,这样你就可以在函数中得到一个弹出窗口你想工作
另一种方法是使用console.log("TESTING");
,它将生成日志文件。您也可以跟踪日志文件
对于关于连接类型的NXT问题,您可以看到并使用此https://github.com/apache/cordova-plugin-network-information/blob/dev/doc/index.md
所以回顾代码,看起来问题是没有检查deviceready
事件。
试试这样写:
HTML:<body onload="onLoad">
JS:
function onLoad() {
document.addEventListener('deviceready', deviceReady, false);
}
function deviceReady() {
registerElementEvents();
validateFields();
// Check Internet Connection
checkConnection();
}
我使用一个布尔值。当为true时,PhoneGap被正确加载。
// device ready
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
window.deviceReady = true;
}