在做一个提示框提醒用户“安装成功,是否打开”的时候,因为通过参数只能得到包名,里面真正启动的是哪个activity是很难知道的,除非你去重新解析androidManifest.xml。
这里PackageManager API中有 提供一个方法:
/**
* 通过packagename启动应用
* @param context
* @param packagename
* */
public static void startAPPFromPackageName(Context context,String packagename){
Intent intent=isexit(context,packagename);
if(intent==null){
Log.i(TAG,"APP not found!");
}
context.startActivity(intent);
}
/**
* 通过packagename判断应用是否安装
* @param context
* @param packagename
*
* @return 跳转的应用主activity Intent
* */
public static Intent isexit(Context context,String pk_name){
PackageManager packageManager = context.getPackageManager();
Intent it= packageManager.getLaunchIntentForPackage(pk_name);
return it;
}