一、创建类ActivityCollector

public class ActivityCollector {    public static List activities=new ArrayList<>();    public static void addActivity(Activity activity) {        activities.add(activity);    }    public static void removeActivity(Activity activity) {        activities.remove(activity);        if (!activity.isFinishing()) {            activity.finish();        }    }    public static void finishAll() {        for(Activity activity:activities){            if (!activity.isFinishing()) {                activity.finish();            }        }        activities.clear();    }}


二、创建一个BaseActivity类继承与AppCompatActivity,让工程里所有的Activity都继承于BaseActivity。

public class BaseActivity extends AppCompatActivity{      @Override   protected void onCreate(Bundle savedInstanceState){      super.onCreate(savedInstanceState);      Log.i("BaseActivity", getClass().getSimpleName());      ActivityCollector.addActivity(this);   }   @Override   protected void onDestroy(){      super.onDestroy();      ActivityCollector.removeActivity(this);   }}


三、获取当前Activity名称

1. 不包括包名的Activity名称(例如MainActivity)

int num = ActivityCollector.activities.size()-1;String activityName = ActivityCollector.activities.get(num).getClass().getSimpleName();

2.包括包名的Activity名称(例如View.Presentation.MainActivity)

int num = ActivityCollector.activities.size()-1;String activityName = ActivityCollector.activities.get(num).getLocalClassName();


更多相关文章

  1. Android入门:Button
  2. Android简单的Fragment嵌套Fragment(Viewpager+Fragement)
  3. android studio获取SH1码
  4. android 通过资源文件名称获取资源文件id
  5. Android开发之自定义PopupWindow记录
  6. Android读取手机联系人且获得联系人手机号+名称
  7. 快捷方式工具类
  8. Android获取WiFi ip相关信息
  9. android studio 3.0 修改release生成的apk名称

随机推荐

  1. android 向serverGet和Post请求的两种方
  2. Android(安卓)studio 开发第一篇 APP项目
  3. android 开发之旅 R.java 常见问题
  4. android数据库使用小结
  5. 直播软件源码Android(安卓)多个ImageView
  6. 推荐一款视频转换软件免费无插件ipad/iph
  7. Android(安卓)adb 命令总结_持续更新
  8. android开发指南
  9. My first app on Android(安卓)Market --
  10. 如何在unity中生成android工程