-1
我正在开发一个启动器应用程序。我注意到相机和画廊的名称相同,Google+和Photos也具有相同的名称。当我尝试启动相机/画廊时,会打开画廊,当我尝试启动照片/ Google +时,我会打开Google+。相机和图库具有相同的包名称
我使用此代码来获取应用程序列表。
Intent i = new Intent(Intent.ACTION_MAIN, null);
i.addCategory(Intent.CATEGORY_LAUNCHER);
List<ResolveInfo> availableActivities = manager.queryIntentActivities(i, 0);
至于摄像头,我知道,我可以用一个Intent时,应用程序的名称是摄像头和包名是画廊,但也可能有许多应用程序具有同样的事情,开始摄像。是否有任何适用于所有应用程序的通用解决方案?
PS:这是我如何得到应用信息
for(ResolveInfo ri : availableActivities) {
AppItem app = new AppItem();
app.setLabel(ri.loadLabel(manager));
app.setName(ri.activityInfo.packageName);
quick_apps.add(app);
}
它的工作原理,谢谢! –
很高兴帮助你:) – user3186605