パッケージ名を使用して特定のアプリケーションを開こうとしています。このコードを使用:try/catchブロックがある場合でも、 'boolean android.content.Intent.migrateExtraStreamToClipData()'がnullオブジェクト参照にクラッシュするアプリケーション
public void openAppHavingPackageName(String packageName, String appName) {
try {
Intent intent = getBaseContext().getPackageManager().getLaunchIntentForPackage(packageName);
startActivity(intent);
} catch (ActivityNotFoundException e) {
Log.e(TAG, e.getMessage());
}
}
それは私が私の携帯電話にインストールされたアプリを開くしようとしている時に正常に動作しているが、私は自分の携帯電話にないアプリを開こうとしたときに、アプリはこれを与えて墜落した
エラー:行01の
java.lang.NullPointerException: Attempt to invoke virtual method 'boolean android.content.Intent.migrateExtraStreamToClipData()' on a null object reference
startActivity(intent);
あなたは例外が巻き込まれず、代わりにコードがクラッシュを引き起こして実行を取得している理由は、私はそこtry/catch
ブロックを持って見ることができるように?