2
我想添加我的活動(com.myapp.launcher.settings)到一個空的ArrayList。知道它的名字是活動的ResolveInfo對象嗎?
ArrayList<ResolveInfo> selectedApps = new ArrayList<ResolveInfo>();
selectedApps.add(/*WHAT GOES IN HERE?*/);
但我不知道如何獲得一個ResolveInfo對象與我的活動。
我設法做了一個解決方法,循環遍歷所有應用程序來查找我的活動。但它不是非常有效或實用:
// Get an array list of all apps
ArrayList<ResolveInfo> allApps = (ArrayList<ResolveInfo>) pm.queryIntentActivities(intent, PackageManager.PERMISSION_GRANTED);
for(final ResolveInfo app : allApps) {
// If it's name is "com.myapp.launcher.settings" add it
if(app.activityInfo.name.equals("com.myapp.launcher.settings")) {
selectedApps.add(app);
}
}