首页 > 解决方案 > Android从Activity获取包名

问题描述

我有来自第三方应用程序的活动名称

"com.example.packagename.MainActivity"

如何以编程方式检索此第三方应用程序的包名称?

PS:我什至不确定这是一个活动。这可能是一个错误的字符串。

标签: androidandroid-activitypackage

解决方案


您可以从外部应用程序中找到包名称:

private String getExternalPackageName(String appname) {
    PackageManager pm = thisActivity.getPackageManager();
    List<ApplicationInfo> aList = pm.getInstalledApplications(PackageManager.GET_META_DATA);
    String aName = "";
    for (ApplicationInfo appi : aList) {
        String n = (String)pm.getApplicationLabel(appi);

        if (n.toUpperCase().contains(appname)) {
            aName = appi.packageName;
        }
     }
     return aName;
}

请务必使用 appname => 大写调用此函数


推荐阅读