比如启动小米手机中的电子邮件客户端(非Gmail)
Intent intent = new Intent();
intent.setClassName("com.android.email", "com.android.email.activity.Welcome");
startActivity(intent);
其中com.android.email是客户端的包名,com.android.email.activity.Welcome是启动的activity。
如果不知道应用的包名和activity的名字怎么办?
以下代码可以得到手机中所有应用程序的包名和启动activity的名字
List<ResolveInfo> mApps;
Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);
mApps = getPackageManager().queryIntentActivities(mainIntent, 0);
输出看看

for( ResolveInfo info :mApps){
System.out.println( info.activityInfo.packageName);
System.out.println( info.activityInfo.name);
}
得到了mApps,就可以灵活的匹配应用的信息了。
本文介绍了一种通过Intent启动安卓设备上特定应用的具体方法,并提供了一个示例:如何启动小米手机中的电子邮件客户端。此外,还提供了如何获取设备上所有应用程序的包名及启动Activity名称的方法。
1032

被折叠的 条评论
为什么被折叠?



