zoukankan      html  css  js  c++  java
  • Android开发检测App从后台进入前台的解决方法

    public class ActLifecycle implements ActivityLifecycleCallbacks {
    
      private int mPreActivityStartedCount = 0;
      private int mActivityStartedCount = 0;
      private int mActivityOrientation = Configuration.ORIENTATION_UNDEFINED;
    
      @Override
      public void onActivityCreated(Activity activity, Bundle savedInstanceState) {
      }
    
      @Override
      public void onActivityStarted(Activity activity) {
        mPreActivityStartedCount = mActivityStartedCount;
        mActivityStartedCount++;
        int orientation = getOrientation(activity);
        if (mPreActivityStartedCount == 0 && mActivityStartedCount == 1
            && orientation == mActivityOrientation) {
          handleAppForeground(activity);//app从后台进入前台了,在这个自定义的方法里处理具体的业务
        }
        mActivityOrientation = orientation;
      }
    
      private int getOrientation(Activity activity) {
        if (activity != null && activity.getResources() != null) {
          Configuration configuration = activity.getResources().getConfiguration();
          if (configuration != null) {
            return configuration.orientation;
          }
        }
        return Configuration.ORIENTATION_UNDEFINED;
      }
    
      @Override
      public void onActivityResumed(Activity activity) {
      }
    
      @Override
      public void onActivityPaused(Activity activity) {
      }
    
      @Override
      public void onActivityStopped(Activity activity) {
        mPreActivityStartedCount = mActivityStartedCount;
        mActivityStartedCount--;
      }
    
      @Override
      public void onActivitySaveInstanceState(Activity activity, Bundle outState) {
      }
    
      @Override
      public void onActivityDestroyed(Activity activity) {
      }
    }

    //注册app生命周期回调函数
    application.registerActivityLifecycleCallbacks(new ActLifecycle());
     
  • 相关阅读:
    [转]移动端实现垂直居中的几种方法
    MySQL常见的两种存储引擎:MyISAM与InnoDB的爱恨情仇
    关于分布式计算的一些概念
    一份最中肯的Java学习路线+资源分享(拒绝傻逼式分享)
    Java多线程学习(八)线程池与Executor 框架
    深入理解工厂模式
    深入理解单例模式
    Java NIO 之 Buffer(缓冲区)
    Java NIO 概览
    分布式系统的经典基础理论
  • 原文地址:https://www.cnblogs.com/yongfengnice/p/10986310.html
Copyright © 2011-2022 走看看