Android检查安装应用失败



在我的程序中检查是否安装了OpenCV Manager应用程序。我从这个答案中得到了想法,这是我的代码:

public static boolean isAppInstalled(Context cnt, String packName) {
    PackageManager pm = cnt.getPackageManager();
    try {
        pm.getPackageInfo(packName, PackageManager.GET_ACTIVITIES);
    }
    catch (PackageManager.NameNotFoundException e) {
        return false;
    }
    return true;
}

private boolean isOpenCVInstalled() {
    return GlobalFunctions.isAppInstalled(this, "org.opencv.engine");
}

在我的手机和平板电脑上工作得很好。但是在Samsung Galaxy Xcover 3手机上,它总是返回true,所以在OpenCV相机预览的形式中,我在接受安装时得到package not found, install?消息和file not found

银河手机怎么了?还是用我的代码?

这个链接让我伤心。这是否意味着没有解决方案?

这个方法适合我:

public boolean isAppInstalled(Context ctx,String packageName) {
            PackageManager pm = ctx.getPackageManager();
            List<ApplicationInfo> apps = pm
                    .getInstalledApplications(PackageManager.GET_META_DATA);
            for (ApplicationInfo app : apps) {
                if (app.packageName.equals(packageName)) {
                    return true;
                }
            }
            return false;
        }

我相信这个链接。

现在我的解决方案是不重要的。我改变了OpenCV初始化由initAsyncinitDebug在Activity类的静态部分。我有OpenCV库项目链接到我的项目,所以它适用于我。

相关内容

  • 没有找到相关文章

最新更新