大家好,我之前的一些问题已被标记,所以请友善。
我想知道的是,是否有一些代码可以告诉我的应用程序的用户安装了 apk。然后在我的应用程序中打开它。
我有一个 ListView , ListView 内是可供下载的可用应用程序的列表。我已经弄清楚如何查明 apk 是否在那里安装而不是下载。但我无法找出已安装的位。
我试过这个
public static boolean isPackageInstalled(Context context, String packageName) {
final PackageManager packageManager = context.getPackageManager();
Intent intent = packageManager.getLaunchIntentForPackage(packageName);
if (intent == null) {
return false;
}
List<ResolveInfo> list = packageManager.queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY);
return list.size() > 0;
}
然后使用
ispackageinstalled();
但这需要上下文和字符串 所以我尝试将其添加到构造函数中
Context shb;
private Static String Showbox = "com.tk.Showbox";
然后尝试
ispackageinstalled(shb,Showbox);
应用程序崩溃了哈哈,我显然写错了。如果可能的话,我还希望该选择变为红色(如果已安装)。但打开应用程序将是一个很大的帮助,欢呼伙计们
最佳答案
您需要将实际的Context
传递给该方法。托管 ListView
的 Activity
子类是一个 Context
。将 Activity
传递到您的 ispackageinstalled()
方法中。
关于java - 是否可以查明是否安装了 apk 以及是否安装了应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35943033/