Android程序退出彻底关闭进程的方法
2013-10-11 09:48
686 查看
因为发现光调用finish()方法后 程序中所启动的线程依旧在后台运行——Android的特点之一——否则也不会出现诸多用于关闭进程的工具。搜索了相关资料,大致有以下几种方法可以用于完全关闭进程的方式。其中第一种方法作者已经用过,的确是可行的。
第一种方法:
第二种方法:在onDestroy函数中加入代码
第三种方法:
第四种方法:
第五种方法:
这个方法好像只是退回到桌面…
第六种方法:使用广播机制
第一种方法:
android.os.Process.killProcess(android.os.Process.myPid());
第二种方法:在onDestroy函数中加入代码
System.exit(0);
第三种方法:
ActivityManager manager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); manager.killBackgroundProcesses(package);
第四种方法:
manager.restartPackage(package);
第五种方法:
Intent MyIntent = new Intent(Intent.ACTION_MAIN); MyIntent.addCategory(Intent.CATEGORY_HOME); startActivity(MyIntent); finish();
这个方法好像只是退回到桌面…
第六种方法:使用广播机制
public abstract class EnterActivity extends BaseActivity { ... // 写一个广播的内部类,当收到动作时,结束activity private BroadcastReceiver broadcastReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { close(); unregisterReceiver(this); // 这句话必须要写要不会报错,不写虽然能关闭,会报一堆错 } }; @Override public void onResume() { super.onResume(); // 在当前的activity中注册广播 IntentFilter filter = new IntentFilter(); filter.addAction(Attribute.PAGENAME); registerReceiver(this.broadcastReceiver, filter); // 注册 } /** * 关闭 */ public void close() { Intent intent = new Intent(); intent.setAction(Attribute.PAGENAME); // 说明动作 sendBroadcast(intent);// 该函数用于发送广播 finish(); } ... }
相关文章推荐
- 【Android】【转】Android程序退出彻底关闭进程的方法
- Android程序退出彻底关闭进程的方法
- Android程序退出彻底关闭进程的方法
- 【Android】【转】Android程序退出彻底关闭进程的方法
- Android程序退出彻底关闭进程的方法
- android 退出程序关闭死循环线程的一种方法(开源中国客户端下载APK疑问总结)
- 彻底退出android程序的方法
- .Net程序中如何彻底关闭Excel - 关闭进程外COM方法
- android 退出程序的方法 finish无法彻底退出
- Android2.2中关闭所有界面,彻底退出的方法
- Android 退出程序时关闭所有的activity的几种方法
- Android程序关闭进程的方法
- Android 退出程序 关闭所有Activity 的方法
- Android 2.2关闭所有Activity完全退出程序方法
- 彻底退出android程序的方法
- Android程序完全退出的三种方法
- Android应用开发完全退出程序的通用方法!!! (转)
- Android程序完全退出的三种方法
- android程序 点击两次返回键程序退出(方法总结)
- Android程序完全退出的三种方法