【问题标题】:Android get install location with packagenameAndroid使用包名获取安装位置
【发布时间】:2011-09-09 13:10:38
【问题描述】:

您好,我使用本教程中的以下代码列出了我正在开发的应用程序中的所有已安装应用程序。

http://impressive-artworx.de/2011/list-all-installed-apps-in-style/

我将 onClick 更改为我自己的对话框,我现在需要做的是能够获取应用程序的位置。也就是说,如果它在 /system/app 或 /data/app 中,我希望能够将整个路径烤到按下的应用程序,但不知道如何做到这一点。我可以通过在 onClick 中执行 app.getPackageName() 来获取包名,但是我怎样才能得到 apks 路径呢?感谢您的任何建议或帮助,非常感谢!

【问题讨论】:

    标签: android list installation package


    【解决方案1】:

    经过一番谷歌搜索后,我得到了我想要的东西

    PackageManager m = getPackageManager();
    String s = getPackageName();
    PackageInfo p = m.getPackageInfo(s, 0);
    s = p.applicationInfo.sourceDir;
    

    工作得很好,在这里找到了它

    Get Application Directory

    感谢它帮助我在谷歌上搜索要查找的内容

    【讨论】:

      【解决方案2】:

      看看this。特别是带有publicSourceDir 的sn-p。

      【讨论】:

      • 看起来很有趣,虽然无法真正弄清楚如何使用它,您或其他人是否对此有任何经验
      【解决方案3】:
            List<PackageInfo> packs = packageManager.getInstalledPackages(0); //PackageManager.GET_META_DATA 
            for(int i=0; i < packs.size(); i++) {
               PackageInfo p = packs.get(i);
               ApplicationInfo a = p.applicationInfo; 
               // skip system apps if they shall not be included
               if ((!includeSysApps) && ((a.flags & ApplicationInfo.FLAG_SYSTEM) == 1)) {
                  continue;
               }
               App app = new App();
               app.setTitle(p.applicationInfo.loadLabel(packageManager).toString());
               app.setPackageName(p.packageName);
               app.setVersionName(p.versionName);
               app.setVersionCode(p.versionCode);
               CharSequence description = p.applicationInfo.loadDescription(packageManager);
               app.setDescription(description != null ? description.toString() : "");
               apps.add(app);
            }
      

      您可以使用此代码获取已安装应用程序的信息。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2022-01-23
        • 2015-01-21
        • 1970-01-01
        • 1970-01-01
        • 2015-11-25
        • 1970-01-01
        • 2012-03-05
        • 1970-01-01
        相关资源
        最近更新 更多