android开发 App结束所有activity
来源:互联网 发布:redhat linux忘记密码 编辑:程序博客网 时间:2024/05/16 15:45
由于app是h5写的,用的webView加载,so,activity并不多,我写了一个activity的管理类,
package com.shangyi.ui.activity;import android.app.Activity;import java.util.ArrayList;import java.util.List;/** * class Manager 管理activity,调用ActivityCollector.finishAll();可以在app的任何地方退出 * Created by Vincent on 2016/7/24. */public class ActivityCollector { public static List<Activity> activities=new ArrayList<Activity>(); /** * 添加activity * @param activity */ public static void addActivity(Activity activity){ activities.add(activity); } /** * 移除某个activity * @param activity */ public static void removeActivity(Activity activity){ activities.remove(activity); } /** * 结束所有的activity */ public static void finishAll(){ for(Activity activity:activities){ /*if(!activity.isFinishing()){ activity.finish(); android.os.Process.killProcess(android.os.Process.myPid());//杀死当前进程,自杀 }*/ activity.finish(); android.os.Process.killProcess(android.os.Process.myPid());//杀死当前进程,自杀 } }}
在BaseActivity的onCreate()的方法里面我都会把当前Activity类加入进去,在onDestory方法里面移除,
此方法只有对于继承了BaseActivity基类的Activity才会有用,有一个场景是A(没有继承BaseActivity)–>b(跳转之前要结束栈里面的所有activity)–>c,c退出,退出app,刚开始使用这种方法ActivityCollector .finishAll()退出,结果在C页面退出的时候就返回到A了,各种办法都没管用,后来使用了广播,跳转c页面之前发送广播,在A页面注册广播结束,
A页面onCreate()方法中注册:
IntentFilter intentFilter=new IntentFilter(); intentFilter.addAction("tuichu"); registerReceiver(tuichu, intentFilter);
A页面onDestory()方法中解注册:
unregisterReceiver(tuichu);
在A中写一个内部类广播:
private BroadcastReceiver tuichu=new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) {// ToastUtil.defaultToast(getApplicationContext(),"退出"); finish(); } };
好了,总算是退出了,本来之前是解决了这个问题的,莫名其妙的又出现了
0 0
- android开发 App结束所有activity
- android开发中结束所有activity
- android开发中结束所有的activity
- android开发中如何结束所有的activity
- android开发中如何结束所有的activity
- Android开发中如何结束所有的activity
- android开发中如何结束所有的activity
- android开发中如何结束所有的activity
- android开发中如何结束所有的activity
- android开发中如何结束所有的activity
- android开发中如何结束所有的activity
- Android开发中如何结束所有的activity
- android开发中如何结束所有的activity
- android开发中如何结束所有的activity
- Android开发中如何结束所有的activity
- android开发中如何结束所有的activity
- Android开发中如何结束所有的activity
- android开发中如何结束所有的activity
- DFS_6
- JAVA多线程实现的三种方式
- 递归将数组中所有 null 替换成 '' 和 递归将数组中所有 null 和 '' 删除
- mac端从零开始搭建appium,完成对android应用的测试。
- unity项目去除unity开始动画和发布设置
- android开发 App结束所有activity
- APUE读书笔记-第十章 信号 (二)
- iOS开发网络篇—发送json数据给服务器以及多值参数
- Linux安装JDK,配置Tomcat服务器
- Adaboost 算法的原理与推导
- GIT 生成 SSH key
- 【TCP/IP协议】计算机网络中端口号及分类
- Java应用程序的基本框架
- php原比例生成缩略图