Android中获取当前正在显示的Activity
2018-01-23 17:51
615 查看
1.监听Activity的生命周期
在Application的onCreate方法中监听Activity的生命周期registerActivityLifecycleCallbacks(new ActivityLifecycleCallbacks() { @Override public void onActivityCreated(Activity activity, Bundle savedInstanceState) { } @Override public void onActivityStarted(Activity activity) { } @Override public void onActivityResumed(Activity activity) { MyActivityManager.getInstance().setCurrentActivity(activity); } @Override public void onActivityPaused(Activity activity) { } @Override public void onActivityStopped(Activity activity) { } @Override public void onActivitySaveInstanceState(Activity activity, Bundle outState) { } @Override public void onActivityDestroyed(Activity activity) { } });
2.保存当前Activity的状态
package cn.uniwa.uniwa.util; import android.app.Activity; import java.lang.ref.WeakReference; /** * Created by zhoujian on 2018/1/19. */ public class MyActivityManager { private static MyActivityManager sInstance = new MyActivityManager(); private WeakReference<Activity> sCurrentActivityWeakRef; private MyActivityManager() { } public static MyActivityManager getInstance() { return sInstance; } public Activity getCurrentActivity() { Activity currentActivity = null; if (sCurrentActivityWeakRef != null) { currentActivity = sCurrentActivityWeakRef.get(); } return currentActivity; } public void setCurrentActivity(Activity activity) { sCurrentActivityWeakRef = new WeakReference<Activity>(activity); } }
3.使用场景
在服务中事实弹出被挤掉的对话框,就需要获取当前的Activity相关文章推荐
- [Android]adb 命令方式获取当前显示的Activity
- android 获取当前正在运行的activity
- Android获得当前正在显示的activity类名的方法
- android 获取当前显示的activity和收起虚拟键盘
- 获取Android当前显示(最外层)的Activity的全名
- 获取当前正在显示activity的包名
- android 获取当前屏幕显示的Activity
- Android开发中关于获取当前Activity的一些思考
- Android中通过view方式获取当前Activity的屏幕截图实现方法
- 获取当前AppDelegate 正在显示的UIViewController
- Android 获取Activity当前view
- Android中获取正在运行的服务-------ActivityManager.RunningServiceInfo的使用
- Android查看当前显示哪个Activity
- Android获取当前系统正在运行应用及其数据流量
- Android如何获得当前应用显示的Activity
- Android中获取正在运行的服务-------ActivityManager.RunningServiceInfo的使用
- Android 判断应用前后台运行状态并获取当前 Activity 实例
- 获取屏幕上正在显示的activity
- 获取当前显示页面的Activity名字命令
- android 获取当前的activity