development

안드로이드 폰갭에서 버튼을 클릭하면 앱을 종료 하시겠습니까?

big-blog 2020. 12. 8. 18:54
반응형

안드로이드 폰갭에서 버튼을 클릭하면 앱을 종료 하시겠습니까?


나는 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>

그러나 작동하지 않습니다.


이 코드를 사용해보십시오.

<!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>

교체 SRC = "코르도바-1.5.0.js를" 당신의 폰갭의 JS와 함께.


다음에 따라 다양한 방법으로 앱을 닫을 수 있습니다.

if (navigator.app) {
    navigator.app.exitApp();
} else if (navigator.device) {
    navigator.device.exitApp();
} else {
    window.close();
}

navigator.app.exitApp();

응용 프로그램을 종료하려는 위치에이 줄을 추가하십시오.


@Pradip Kharbuja

Cordova-2.6.0.js (l. 4032) :

exitApp:function() {
  console.log("Device.exitApp() is deprecated. Use App.exitApp().");
  app.exitApp();
}

if(navigator.app){
        navigator.app.exitApp();
}else if(navigator.device){
        navigator.device.exitApp();
}

댓글로 답장을 못해 죄송합니다. 참고로이 코드는

if (navigator.app) {
navigator.app.exitApp();
}
else if (navigator.device) {
  navigator.device.exitApp();
}
else {
          window.close();
}

작동하지 않는지 확인합니다. 나는 phonegap 6.0.5와 cordova 6.2.0을 사용합니다.


I used a combination of the above because my app works in the browser as well as on device. The problem with browser is it won't let you close the window from a script unless your app was opened by a script (like 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
            });
        }

참고URL : https://stackoverflow.com/questions/12297525/exit-from-app-when-click-button-in-android-phonegap

반응형