【发布时间】:2016-08-25 06:09:39
【问题描述】:
我正在开发一个 Launcher 应用程序。我注意到相机和图库具有相同的包名,Google+ 和照片也具有相同的包名。当我尝试启动相机/图库时,它会打开图库,当我尝试启动照片/Google+ 时,我会打开 Google+。
我正在使用此代码获取应用列表。
Intent i = new Intent(Intent.ACTION_MAIN, null);
i.addCategory(Intent.CATEGORY_LAUNCHER);
List<ResolveInfo> availableActivities = manager.queryIntentActivities(i, 0);
至于相机,我知道当应用名称为相机且包名称为画廊名称时,我可以使用 Intent 启动相机,但可能有很多应用具有相同的功能。是否有适用于所有应用的通用解决方案?
P.S.:这就是我获取应用信息的方式
for(ResolveInfo ri : availableActivities) {
AppItem app = new AppItem();
app.setLabel(ri.loadLabel(manager));
app.setName(ri.activityInfo.packageName);
quick_apps.add(app);
}
【问题讨论】:
标签: android camera gallery launcher