getPackageManager.getLaunchIntentForPackage(packageName)获取Intent为null

问题描述:

在开发机顶盒App的时候,产品有一个需要跳转第三方App的需求,跳转代码如下:

public void startApk(String packageName) throws NameNotFoundException {
		Intent intent = new Intent();
		packageManager.getPackageInfo(packageName, PackageManager.GET_ACTIVITIES);
		intent = packageManager.getLaunchIntentForPackage(packageName);
		mContext.startActivity(intent);
	}

之前测试几个第三方App都没有问题,到了现场部署的时候出现了intent为null为现象,原因是:

用以上方式跳转需第三方App配置android.intent.category.LAUNCHER这个属性才可以获取到intent。(之前测试的都配置了)

发现问题之后,改成了隐式跳转:

Intent intent = new Intent("com.hisense.ott.home.launch");
context.startActivity(intent);

猜你喜欢

转载自blog.csdn.net/menglong0329/article/details/89018174