Android S和R上判断apk和activity是否安装注册

  • 安装

为了允许其他应用看到其他所有已安装应用,Android 11 引入了 QYERT_ALL_PACKAGES 权限,需要在Androidmanifes写明使用

List<PackageInfo> mPackageinfoList = pm.getInstalledPackages(0);获取的apk列表才是完整列表,否则会去除一些apk导致获取不完整。
如果只检查某apk是否安装不需获取全部列表则 getInstalledPackages(0) 不推荐使用,建议使用ApplicationInfo info = mPackageManager.getApplicationInfo(packageNames, 0); 如果info为null就没安装。
  • 注册

ComponentName cn = new ComponentName(packageName, packageName + activityName);
ActivityInfo info = pm.getActivityInfo(cn, 0);

如果info为null就没注册。

posted @ 2022-03-15 19:06  小汀  阅读(284)  评论(0编辑  收藏  举报