我是phonegap的新手。我准备了一个示例应用程序。我的应用程序有2页,第一页有一个按钮,点击时第二页将打开。使用以下
工作正常 function callAnothePage()
{
window.location = "test.html";
}
第二页有一个按钮,点击后我想退出应用程序。我使用了以下
function exitFromApp()
{
navigator.app.exitApp();
}
test.html
代码,
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" charset="utf-8" src="cordova-2.0.0.js"></script>
<script type="text/javascript" charset="utf-8">
function onLoad()
{
console.log("device reday !!!!")
document.addEventListener("deviceready", onDeviceReady, true);
}
function exitFromApp()
{
console.log("in button");
navigator.app.exitApp();
}
</script>
</head>
<body onload="onLoad();">
<h4><center>Login Page</center></h4>
<input type="submit" onclick="exitFromApp()" value="exit"/>
</body>
</html>
但它没有用。
答案 0 :(得分:64)
试试这段代码。
<!DOCTYPE HTML>
<html>
<head>
<title>PhoneGap</title>
<script type="text/javascript" charset="utf-8" src="cordova-1.5.0.js"></script>
<script type="text/javascript" charset="utf-8">
function onLoad()
{
document.addEventListener("deviceready", onDeviceReady, true);
}
function exitFromApp()
{
navigator.app.exitApp();
}
</script>
</head>
<body onload="onLoad();">
<button name="buttonClick" onclick="exitFromApp()">Click Me!</button>
</body>
</html>
用你的phonegap js替换 src =“cordova-1.5.0.js”。
答案 1 :(得分:16)
有多种方法可以关闭应用,具体取决于:
if (navigator.app) {
navigator.app.exitApp();
} else if (navigator.device) {
navigator.device.exitApp();
} else {
window.close();
}
答案 2 :(得分:11)
navigator.app.exitApp();
将此行添加到您希望退出应用程序的位置。
答案 3 :(得分:3)
@Pradip Kharbuja
在Cordova-2.6.0.js(l.4032)中:
exitApp:function() {
console.log("Device.exitApp() is deprecated. Use App.exitApp().");
app.exitApp();
}
答案 4 :(得分:2)
if(navigator.app){
navigator.app.exitApp();
}else if(navigator.device){
navigator.device.exitApp();
}
答案 5 :(得分:1)
if (navigator.app) {
navigator.app.exitApp();
}
else if (navigator.device) {
navigator.device.exitApp();
}
else {
window.close();
}
我确认没有工作。我使用phonegap 6.0.5和cordova 6.2.0
答案 6 :(得分:0)
我使用了上述的组合,因为我的应用程序可以在浏览器和设备上运行。浏览器的问题是它不会让您从脚本关闭窗口,除非您的应用程序是由脚本打开的(如browsersync)。
if (typeof cordova !== 'undefined') {
if (navigator.app) {
navigator.app.exitApp();
}
else if (navigator.device) {
navigator.device.exitApp();
}
} else {
window.close();
$timeout(function () {
self.showCloseMessage = true; //since the browser can't be closed (otherwise this line would never run), ask the user to close the window
});
}