我正在开发一个混合移动应用程序的项目。我在构建过程中使用了ripple进行测试和调试。我使用phonegap / cordova为Android构建apk,这很顺利。只是现在看起来似乎没有触发deviceready事件。
登录时,我使用以下javascript代码;
document.addEventListener('deviceready', function() {
var email = $('#loginEmail');
var password = $('#loginPassword');
var base_url = $('#loginUrl');
email.val(window.localStorage.getItem('ptu_email'));
password.val(window.localStorage.getItem('ptu_password'));
base_url.val(window.localStorage.getItem('ptu_url'));
console.log(window.localStorage.getItem('ptu_url'));
$('#loginForm').on('submit', function(event) {
event.preventDefault();
$("#loginForm").validate();
company.BaseUrl = base_url.val();
company.LoginWithEmail(email.val(), password.val()).then(function() {
window.location = 'dashboard.html';
}, function(err) {
console.log("Error:");
console.log(err);
});
});
}, false);
这在使用纹波仿真器时工作正常,但在我的galaxy s4上没有安装apk。我在这里查看了一些其他主题,关于deviceready事件的问题,但还没有找到解决方案。任何人都知道这里出了什么问题?
答案 0 :(得分:0)
使用这种方法。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width">
<title>Device Ready</title>
<script src="cordova.js"></script>
<script>
function onLoad() {
document.addEventListener('deviceready', main, false);
}
</script>
</head>
<body onload="onLoad()">
</body>
<script>
function main(){
}
</script>
</html>