美文网首页
得到Activities栈顶的Activity名称

得到Activities栈顶的Activity名称

作者: SYfarming | 来源:发表于2016-09-14 17:45 被阅读105次

    具体 步骤如下:
    1、 得到当前运行环境(context)的Activity管理器;

    1. 通过Activity管理器得到当前的任务栈信息;
    2. 从任务栈中获得栈顶的Activity的名称。
      具体读者可以参看下面的代码和Android帮助文档。
      代码举例 :
      String getTopActivity(Activity context)
      {
      ActivityManager manager = (ActivityManager)context.getSystemService(ACTIVITY_SERVICE) ;
      List<RunningTaskInfo> runningTaskInfos = manager.getRunningTasks(1) ;
      if(runningTaskInfos != null)
      return (runningTaskInfos.get(0).topActivity).toString() ;
      else
      return null ;
      }
      最后不要忘记在AndroidManifest.xml中增加权限:
      <uses-permission android:name = “android.permission.GET_TASKS”/>

    ActivityManager manager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
    RunningTaskInfo info = manager.getRunningTasks(1).get(0);
    String shortClassName = info.topActivity.getShortClassName(); //类名
    String className = info.topActivity.getClassName(); //完整类名
    String packageName = info.topActivity.getPackageName(); //包名


    Android历练记 是一个关于Android最新技术探讨,包含安全,架构,Android技术开发,ui绘制,源码解析等领域,如果你有兴趣,我们可以一起讨论学习,
    关注微信公众号 Android历练记 或扫一扫二维码:

    Android历练记

    相关文章

      网友评论

          本文标题:得到Activities栈顶的Activity名称

          本文链接:https://www.haomeiwen.com/subject/kawvettx.html