Android 应用监听后台切换前台的方法
2016-06-30 17:55
453 查看
Android在SDK14的时候提供了一个Callback。ActivityLifecycleCallbacks,你可以通过这个Callback拿到App所有Activity的生命周期回调。通过对比ActivityLifecycleCallbacks中onActivityStarted返回的activity实例与上一个返回的实例进行对比,如果不相同,说明应用一直在前台activity之间进行切换,如果相同,则说明应用从后台切换到前台。通过回调触发事件。代码如下:
private void LifeCallBack(){ registerActivityLifecycleCallbacks(new ActivityLifecycleCallbacks() { @Override public void onActivityStopped(Activity activity) { } @Override public void onActivityStarted(Activity activity) { if (activity_old==null){ activity_old=activity; }else { if (activity_old!=activity){ activity_old=activity; }else { checkLifeback.appStatus(); } } } @Override public void onActivitySaveInstanceState(Activity activity, Bundle outState) { } @Override public void onActivityResumed(Activity activity) { } @Override public void onActivityPaused(Activity activity) { } @Override public void onActivityDestroyed(Activity activity) { } @Override public void onActivityCreated(Activity activity, Bundle savedInstanceState) { } }); } public interface CheckLifeBack{ void appStatus(); } public static CheckLifeBack checkLifeback; public static void setOnCheckLifeBack(CheckLifeBack checkLifeBack){ checkLifeback=checkLifeBack; }
相关文章推荐
- android 常见分辨率(mdpi、hdpi 、xhdpi、xxhdpi )及屏幕适配注意事项
- Android进阶(二十二)设置TextView文字水平垂直居中
- Android进阶(二十二)设置TextView文字水平垂直居中
- Androidstudio中gradle配置和使用
- Android JNI简介
- Android 机顶盒开发过程中Listview指定item获取焦点
- Android6.0权限问题,并撰写常用权限工具类
- Android 在机顶盒开发过程当中如何禁止listview的item项获得焦点,而让item的子控件获得焦点
- Android USB Host开发笔记
- android-root
- AndroidStudio设置代码注释模块
- Ubuntu15.04安装AndroidStudio时出现“unable to run mksdcard sdk tool”解决
- In android studio,cannot load 2 facets-unknown facet type:android and android-gradle
- Android之特效五种Toast详解
- android:versionCode和android:versionName 用途
- 5.3、Android Studio录像
- 5.3、Android Studio录像
- AndroidStudio环境下的jni调用(NDK)的方法
- 欢迎使用CSDN-markdown编辑器
- Android内存优化之OOM