在一个应用中启动另外一个已安装的应用:检查升级的时候,打开应用商店去下载升级。
intent.setComponent
public class AccessUtils
{
public static void showRelyAppsList(Context context, String relyAppName, String relyPackageName, int relyVersionCode)
{
Intent intent = new Intent();
intent.putExtra("appName", relyAppName);
intent.putExtra("packageName", relyPackageName);
intent.putExtra("versionCode", relyVersionCode);
startSafeActivity(intent, context, "com.google.appstore",
"com.google.appstore.MainActivity");
}
public static void showAppDetail(Context context, String showPackageName)
{
Intent intent = new Intent();
intent.putExtra("packageName", showPackageName);
startSafeActivity(intent, context, "com.handaer.appstore",
"com.handaer.appstore.MainActivity");
}
private static void startSafeActivity(Intent intent, Context context, String packageName, String className)
{
if ((packageName == null) || (className == null))
return;
try
{
ComponentName component = new ComponentName(packageName, className);
intent.setComponent(component);
intent.setAction("android.intent.action.MAIN");
intent.addCategory("android.intent.category.LAUNCHER");
intent.addFlags(270532608);//新栈中打开
context.startActivity(intent);
} catch (Exception e) {
e.printStackTrace();
}
}
}