Android 手機返回鍵 退出應用

對於後臺代碼退出手機應用這塊就不用介紹了,網上這種方法太多了,我來說一下純html頁面退出手機應用的解決方案


http://dcloudio.github.io/mui/javascript/#closewindow

在以上網址中介紹了一種關閉頁面的方法,其中代碼是這樣的


//備份mui.back,mui.back已將窗口關閉邏輯封裝的比較完善(預加載及父子窗口),因此最好複用mui.back
var old_back = mui.back;
mui.back = function(){
  var btn = ["確定","取消"];
  mui.confirm('確認關閉當前窗口?','Hello MUI',btn,function(e){
    if(e.index==0){
    	//執行mui封裝好的窗口關閉邏輯;
    	old_back();
    }
  });
}


但是我用的 Hbuilder 開發將這些代碼寫入html中的javaScript,還是未能實現,其mui.back 只是退出了彈出框,又回到了軟件主頁。

總之就是搜索了很多方法都未能成功,參考的其他軟件代碼都比較繁瑣,由於開發任務較重,也沒有精簡代碼到最少。以下是我的解決方案。

在登陸頁面要是退出的話,在<script>中寫入

mui.init({
  keyEventBind:{
    backbutton:true
  }
});


這是設置監聽手機返回鍵有效,因爲要捕獲手機返回鍵。 我看了網上的介紹說是默認設置爲監聽有效,但是我沒有去試,所以手動設置監聽有效。

以下是設置退出應用。(彈出框百試無效,所以做了個兩次返回鍵退出應用)

var first=null;
mui.back=function(){
  if(!first){
    first=new Date().getTime();
    mui.toast('再按一次退出系統!');

    setTimeout(function(){
      first=null;
    },2000);
  }else{
    if(new Date().getTime()-first<2000){
      plus.runtime.quit();
   }
 }
};


這段代碼中2000是設置兩秒內再按一次返回鍵則退出應用。將上述兩段代碼放到登陸頁面的script中就可以退出應用了。大家可以試一下去掉監聽設置看能不能返回,歡迎評論本文!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章