Android 照相机和多媒体资料具有相同的软件包名称
我正在开发一个启动器应用程序。我注意到照相机和gallery有相同的软件包名称,Google+和照片也有相同的软件包名称。当我尝试启动照相机/图库时,它会打开图库;当我尝试启动照片/Google+时,我会打开Google+ 我正在使用此代码获取应用程序列表Android 照相机和多媒体资料具有相同的软件包名称,android,camera,gallery,launcher,Android,Camera,Gallery,Launcher,我正在开发一个启动器应用程序。我注意到照相机和gallery有相同的软件包名称,Google+和照片也有相同的软件包名称。当我尝试启动照相机/图库时,它会打开图库;当我尝试启动照片/Google+时,我会打开Google+ 我正在使用此代码获取应用程序列表 Intent i = new Intent(Intent.ACTION_MAIN, null); i.addCategory(Intent.CATEGORY_LAUNCHER); List<ResolveInfo> availab
Intent i = new Intent(Intent.ACTION_MAIN, null);
i.addCategory(Intent.CATEGORY_LAUNCHER);
List<ResolveInfo> availableActivities = manager.queryIntentActivities(i, 0);
虽然它们具有相同的包名,但名称不同,请尝试此操作以启动“活动”,使用下面的代码启动“活动”
Intent localIntent = new Intent();
localIntent.setComponent(new ComponentName(
localResolveInfo.activityInfo.packageName,
localResolveInfo.activityInfo.name));
localIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
try
{
startActivity(localIntent);
} catch (ActivityNotFoundException localActivityNotFoundException)
{
Toast.makeText(mContext, "Package not found!", 0).show();
}
很高兴这对你有帮助:)
Intent localIntent = new Intent();
localIntent.setComponent(new ComponentName(
localResolveInfo.activityInfo.packageName,
localResolveInfo.activityInfo.name));
localIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
try
{
startActivity(localIntent);
} catch (ActivityNotFoundException localActivityNotFoundException)
{
Toast.makeText(mContext, "Package not found!", 0).show();
}