我有一个适用于iOS的应用程序。它使用Cordova并对其某些功能使用远程请求,但是,在Android上,仅在设备上,它有时(非常频繁)不会连接。它几乎总是在Genymotion模拟器上工作,除了一次,我看到了" NET CACHE ERR"或类似于Chrome开发工具控制台中的内容。 (默认的Android模拟器无法连接。)
调用是简单的jQuery ajax发布请求,可以在Genymotion模拟器中正常工作(除了一次以外的所有时间),并且在浏览器和iOS Cordova应用程序中都很好。安装时启用并询问网络权限。有趣的是,它仍然可以获得用于推送通知的设备ID(这需要网络响应,据我所知,但是我认为这可能会产生误导)。
强制性请求的示例:
function connect(){
$.post('https://example.com/stuff.php', {
'var': 'a variable!'
}, function(data) {
//internet request complete, confirm connection successful
window.connected = true;
});
}
window.connected = false;
setInterval(
function(){
if(window.connected==true){
//yeah you connected
}else{
//naw you not connected homie
connect();
}
},
3500
);