java - 是否可以查明是否安装了 apk 以及是否安装了应用程序

标签 java android methods installation apk

大家好,我之前的一些问题已被标记,所以请友善。

我想知道的是,是否有一些代码可以告诉我的应用程序的用户安装了 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传递给该方法。托管 ListViewActivity 子类是一个 Context。将 Activity 传递到您的 ispackageinstalled() 方法中。

关于java - 是否可以查明是否安装了 apk 以及是否安装了应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35943033/

相关文章:

java - ScrollView - 从膨胀的 xml 布局添加动态行

java - 如何在java中获取默认日期模式?

java - Android 复选框白色边框

android - 如何减少 TableLayout 中单元格之间的填充?

Python:启动类方法时线程不起作用

java - java中调用游戏中fps tick的paint方法

java - jetty 赛跑者。 PWC6349 : Cannot find a java compiler for compilation

android - 如何使用 Retrofit2 上传图片并将其保存在 NodeJS 服务器上?

java - 设置 NetBeans 提示以在使用 int 签名的方法返回 Integer 时发出警告

java - 添加/追加元素到数组 - Java