2016-07-26 5 views
0

저는 새로운 Cordova 웹 개발자입니다. inapbrowser를 사용하여 웹 사이트를 자동으로로드하는 응용 프로그램을 만들고 있습니다. 문제는 다음과 같습니다. 응용 프로그램을 닫는 대신 뒤로 버튼을 클릭하면 사이트가로드 된 후 다시 돌아갑니다. inapp 브라우저가있는 빈 페이지, 뒤로 버튼을 누르면 응용 프로그램을 종료하는 방법 ??어떻게 내 안드로이드 장치에서 응용 프로그램을 종료하려면 코르도바에서 다시 버튼을?

+0

안녕하세요,이 링크를보실 것을 권해드립니다. http://stackoverflow.com/help/how-to-ask이 문서를 따르지 않으면 궁극적으로 질문에 대한 하향 투표가 끝날 수 있습니다. 결국 명성을 잃으면 질문이 닫힙니다. 나는 당신이 이것에 대해 처음 알았지 만 이전에 똑같은 문제에 직면했음을 알았습니다. – Gandhi

답변

0

InAppBroswer 페이지로드시 뒤로 버튼 이벤트를 등록하고 뒤로 버튼 클릭시 앱을 종료 할 수 있습니다.

function onBodyLoad() { 
    document.addEventListener("deviceready", onDeviceReady, false); 
} 

function onDeviceReady() { 
    //inapp is a sample button's id available in HTML 
    $('#inapp').click(function() 
    { 

     try {    
      ref = cordova.InAppBrowser.open('http://apache.org', '_blank', 'location=yes'); 
      ref.addEventListener("exit", onBackButton, false); 
     } 
     catch(err) { 
      alert("Plugin Error - " + err.message); 
     } 

    });  

    function onBackButton(e) { 
     alert("back button pressed"); 
     navigator.app.exitApp(); 
    }  
} 

질문의 핵심은 Official InAppBrowser Plugin Page의에서 addEventListener 섹션에있다 : 다음과 같이 샘플 코드입니다.

+0

이 샘플을 사용하려했지만 작동하지 않았습니다.이 오류가 있습니다 ** "잡히지 않은 TypeError : 정의되지 않은"confirm '메서드를 호출 할 수 없습니다. ** –

+0

@ Imen.A navigator 알림을 사용하려면 cordova-plugin-dialogs 플러그인을 설치해야합니다. 그 밖의 간단한 자바 스크립트 alertbox도 사용할 수 있습니다. – Gandhi

+0

여기 네비게이터 알림없이 내 코드입니다. 'document.addEventListener ('deviceready ', function() { cordova.InAppBrowser.open ('http://example.com ' , '_blank', 'location = no'); document.addEventListener ("backbutton", onBackKeyDown, false); }}); onBackKeyDown() { navigator.app.exitApp(); }' –