2015-12-22 3 views
0

Я работаю над приложением Phonegap. Приложение готово, и теперь я хочу добавить событие кнопки «Назад», когда нажата аппаратная поддержка (в android).Phonegap back button i android not caught

Я прошел через ряд ссылок без везения.

Может кто-нибудь сказать мне, какой именно способ поймать событие кнопки «Назад» в приложении «Кордова» для Android. Мой код ниже.

index.html

<script type="text/javascript"> 
    document.addEventListener("deviceready", onDeviceReady, false); 

    alert("====device ready----"); 
    // PhoneGap is loaded and it is now safe to make calls PhoneGap methods 
    function onDeviceReady() { 
     // Register the event listener 
     document.addEventListener("backbutton", onBackKeyDown, false); 
     alert("===back button initializing=="); 
    } 

    // Handle the back button 
    function onBackKeyDown() { 
    alert("====BACK PRESSED===="); 
    } 
</script> 

Когда я нажимаю кнопку назад, ничего не происходит.

Может кто-нибудь сказать мне, какую ошибку я сделал. Пожалуйста, он потратил впустую 6 часов. :(

+0

Вы когда-нибудь видели предупреждение о «инициализации кнопки« Назад »? Я бы перевел предупреждение для« устройства »в onDeviceReady также потому, что, поскольку он не говорит вам, что событие готовности устройства произошло, ваш код для добавления события кнопки« Назад » слушатель выглядит корректно для меня. –

+0

Ничего не произошло с помощью этого кода, при этом этот код не отображается. – JIGAR

+0

у вас есть политика безопасности контента meta тег? – jcesarmobile

ответ

1
make sure you have installed codova dialogs plugin:- 

For example:- 

cordova plugin install org.apache.cordova.dialogs 

and also add following line:- 

document.addEventListener("backbutton", backKeyDown, true); 
       navigator.app.overrideBackbutton(true); 
       function backKeyDown() {//code here 
       }  
+0

Без изменений после использования вашего кода и инструкций – JIGAR

+0

Поставьте оповещение в onBackKeyDown и проверьте его –

+0

ничего не произошло ... предупреждение не отображается ... !!! – JIGAR

0

Пожалуйста, дайте мне знать, что это версия Cordova, используя в настоящее время. Если вы используете версию Cordova> = 4 среднее, в cordova.js пожалуйста ниже изменений будет работать

//var APP_PLUGIN_NAME = Number(cordova.platformVersion.split('.')[0]) >= 4 ? 'CoreAndroid' : 'App'; 
var APP_PLUGIN_NAME = 'App'; 
Смежные вопросы