获取所有和隐式Intent匹配上的Activity

xiaoxiao2021-02-27  203

记得老师教我们隐式启动Activity的时候,说这样能个Intent,添加一些过滤条件,最后startActivity就可以了。要不是因为遇到找不到的情况,我差点就信了。

扔个东西出去,没人接,然后就报错了!

正事开始:

1.我们先要有一个包管理器

PackageManager manager = getPackageManager();

2.然后能个Intent

Intent intent = new Intent(Intent.ACTION_MAIN, null); intent.addCategory(Intent.CATEGORY_HOME); intent.addCategory(Intent.CATEGORY_DEFAULT);

3.然后通过包管理器根据Intent来扫描一下

List<ResolveInfo> list =manager.queryIntentActivities(intent, 0);

4.你可以列出来看看里面都有哪些Activity

for (int i = 0; i < list.size(); i++) { manager.clearPackagePreferredActivities(list.get(i).activityInfo.name); }
转载请注明原文地址: https://www.6miu.com/read-9738.html

最新回复(0)