Android 退出應用程序的實現(xiàn)方法
Android 退出應用程序的實現(xiàn)方法
android 退出應用程序會調(diào)用android.os.Process.killProcess(android.os.Process.myPid())或是System.exit(0),這只是針對第一個Activity(也就是入口的Activity)時生效。如果有A,B,C三個Activity,而想在B 或C 中Activity 退出,調(diào)用上面的方法,往往會銷毀當前的Activity 返回上一個Activity。當然也可以逐個返回上一個Activity,直到跳轉(zhuǎn)到入口的Activity,最后退出應用程
序。但這樣比較麻煩,而且逐個返回的體驗并不友好。下面這種方法是寫一個SysApplication 類,利用單例模式管理Activity,在每個在Activity 的onCreate()方法中調(diào)用ExitApplication.getInstance().addActivity(this)方法,在退出時調(diào)用ExitApplication.getInstance().exit()方法,就可以完全退出應用程序了。
import java.util.LinkedList;
import java.util.List;
import android.app.Activity;
import android.app.Application;
public class SysApplication extends Application{
private List<Activity> mList = new LinkedList<Activity>();
private static SysApplication instance;
private SysApplication()
{
}
public synchronized static SysApplication getInstance()
{
if(null == instance)
{
instance = new SysApplication();
}
return instance;
}
//add Activity
public void addActivity(Activity activity)
{
mList.add(activity);
}
public void exit()
{
try{
for (Activity activity : mList)
{
if(activity != null)
activity.finish();
}
}catch (Exception e){
e.printStackTrace();
}finally{
System.exit(0);
}
}
public void onLowMemory(){
super.onLowMemory();
System.gc();
}
}
在每個activity 的onCreate中調(diào)用SysApplication.getInstance().addActivity(this);
然后在退出應用的時候調(diào)用SysApplication.getInstance().exit();
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關文章
Android中Intent傳遞對象的兩種方法Serializable,Parcelable
這篇文章主要介紹了Android中的傳遞有兩個方法,一個是Serializable,另一個是Parcelable,對intent傳遞對象的兩種方法感興趣的朋友一起學習吧2016-01-01
Android4.0.x Home鍵事件攔截監(jiān)聽的方法
這篇文章主要介紹了Android4.0.x Home鍵事件攔截監(jiān)聽的方法,對比分析了2.3.x的實現(xiàn)方法,分析了4.0.x實現(xiàn)Home鍵事件攔截監(jiān)聽的相關技巧,需要的朋友可以參考下2016-02-02
Android系統(tǒng)開發(fā)中l(wèi)og的使用方法及簡單的原理
LOG是廣泛使用的用來記錄程序執(zhí)行過程的機制,它既可以用于程序調(diào)試,也可以用于產(chǎn)品運營中的事件記錄;在平時開發(fā)過程中經(jīng)常需要與log打交道,所以很有必要了解log的使用方法及簡單的原理,感興趣的朋友可以了解下啊2013-01-01
解決eclipse啟動時報錯Failed to create the Java Virtural Machine.問題的
這篇文章主要介紹了解決eclipse啟動時報Failed to create the Java Virtural Machine.問題的方法,感興趣的小伙伴們可以參考一下2016-01-01
Android Studio 3.6安裝全過程及AVD安裝運行步驟詳解
這篇文章主要介紹了Android Studio 3.6安裝全過程及AVD安裝運行步驟詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-03-03
Android開發(fā)實現(xiàn)從相冊中選擇照片功能詳解
這篇文章主要介紹了Android開發(fā)實現(xiàn)從相冊中選擇照片功能,涉及Android權限控制、事件綁定、文件路徑與獲取等相關操作技巧,需要的朋友可以參考下2019-03-03
Android PowerManagerService省電模式策略控制
這篇文章主要介紹了Android PowerManagerService省電模式策略控制,本文基于前兩篇文章的基礎介紹展開詳情,感興趣的小伙伴可以參考一下2022-08-08
Android搜索框(SearchView)的功能和用法詳解
這篇文章主要為大家詳細介紹了Android搜索框SearchView的功能和用法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-05-05

