代码之家  ›  专栏  ›  技术社区  ›  Gonzalo Solera

检测已安装的应用程序[重复]

  •  1
  • Gonzalo Solera  · 技术社区  · 12 年前

    我能知道手机中是否以编程方式安装了特定的应用程序吗?我的应用程序会根据情况以某种方式或其他方式进行处理。我怎样才能得到这些信息?

    谢谢

    2 回复  |  直到 12 年前
        1
  •  5
  •   Aiden Thompson    12 年前
    private boolean isAppInstalled(String packageName) {
        PackageManager pm = getPackageManager();
        boolean installed = false;
        try {
            pm.getPackageInfo(packageName, PackageManager.GET_ACTIVITIES);
            installed = true;
        } catch (PackageManager.NameNotFoundException e) {
            installed = false;
        }
        return installed;
    }
    
        2
  •  1
  •   Trikaldarshiii    12 年前

    必须知道程序包名称 检查应用程序是否已安装

    如果程序包名称类似 com.myapp.name网站

    使用以下内容生存

    boolean isExists;
    try
            {
                getPackageManager().getPackageInfo("com.myapp.name", PackageManager.GET_ACTIVITIES);
                isExists = true;
            }
            catch(NameNotFoundException e)
            {
                isExists = false;
                // Sep 11, 2013 8:39:47 PM
                Log.e("Exception", "NameNotFoundException" + String.valueOf(e.getMessage()));
                e.printStackTrace();
            }
    

    当出现以下情况时,必须使用try-catch around来处理预期错误 名称未找到异常 被抛出