我尝试在我的应用程序中启动另一个应用程序
我试过两种方法。
方法1
Intent intent = new Intent(Intent.ACTION_MAIN);
ComponentName componentName = new ComponentName("com.b_app", "com.b_app.MainActivity");
intent.setComponent(componentName);
startActivity(intent);
方法2
Intent intent = getPackageManager().getLaunchIntentForPackage("com.b_app");
if (intent != null) {
startActivity(intent);//null pointer check in case package name was not found
}
else Toast.makeText(this, "Error", Toast.LENGTH_SHORT).show();
方法1
给我错误:
Unable to find explicit activity class {com.b_app/com.b_app.MainActivity}; have you declared this activity in your AndroidManifest.xml?
方法2
toast显示错误(my else条件),这意味着getPackageManager()返回空。
我在B_应用程序中的清单
<activity android:name="com.b_app.MainActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
我很确定B_应用程序安装在我的智能手机上。
我怎么解决?