如何在运行时获取 AndroidManifest 里面的 parentActivityName 属性?

kmxz
  • 4.3k

例如我在 AndroidManifest.xml 中有

  <activity
        android:name="com.example.myfirstapp.DisplayMessageActivity"
        android:label="@string/title_activity_display_message"
        android:parentActivityName="com.example.myfirstapp.MainActivity" >
        

如果想在运行时获取到当前 activity 的 parentActivityName 属性值,如何做到?

我知道 support library 里面有提供 NavUtils.getParentActivityName。但是那个方法似乎只能获取 meta-data 标签里设置的 parent activity,无法获取 parentActivityName 属性里设置的 parent activity。

回复
阅读 2.1k
1 个回答

PackageInfo packageInfo = getPackageManager().getPackageInfo(getPackageName(), PackageManager.GET_ACTIVITIES);
ActivityInfo[] activities = packageInfo.activities;
String parentActivityName = activities[1].parentActivityName;

清单文件里的信息,都可以通过包管理器获取。我好奇android:parentActivityName属性的使用情景是什么样的,如果方便的话,请题主说一下~~

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
你知道吗?

宣传栏