Android 一个app启动另一个app

/**
 * @param packagename 要启动程序的包名
 */
private void openApplicationWithPackageName(String packagename)
{
	PackageInfo packageinfo = null;
	try{
		packageinfo = this.getPackageManager().getPackageInfo(packagename, 0);
	}catch(NameNotFoundException  e)
	{
		e.printStackTrace();
	}
	if(packageinfo == null){
		return;
	}
	Intent resolveIntent  = new Intent(Intent.ACTION_MAIN,null);
	resolveIntent .addCategory(Intent.CATEGORY_LAUNCHER);
	resolveIntent .setPackage(packageinfo.packageName);
	
	List<ResolveInfo> resolveinfolist = this.getPackageManager().queryIntentActivities(resolveIntent , 0);
	
	ResolveInfo resolveInfo = resolveinfolist.iterator().next();
	if(resolveInfo != null )
	{
		String packageName = resolveInfo.activityInfo.packageName;
		String className = resolveInfo.activityInfo.name;
		Intent intent = new Intent(Intent.ACTION_MAIN);
		intent.addCategory(Intent.CATEGORY_LAUNCHER);
		
		ComponentName cn = new ComponentName(packageName,className);
		//可添加要传递的参数
		Bundle bundle = new Bundle();
		
		intent.setComponent(cn);
		intent.putExtras(bundle);
		startActivity(intent);
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值