我幾年沒有做過異常處理,我似乎無法弄清楚我做錯了什麼。我有一個應用程序,打開我的另一個應用程序,如果用戶還沒有其他應用程序,我希望當前的應用程序重定向到Play商店。現在,如果應用程序未安裝,該程序將強制關閉。我當前的代碼是:ActivityNotFoundException處理
try{
Intent intent = new Intent();
PackageManager manager = getPackageManager();
intent = manager.getLaunchIntentForPackage("my.app.package");
intent.addCategory(Intent.CATEGORY_LAUNCHER);
startActivity(intent);
}
catch(ActivityNotFoundException activityNotFound){
Intent playStoreIntent = new Intent(Intent.ACTION_VIEW,
Uri.parse("market://details?id=my.app.package"));
startActivity(playStoreIntent);
}
我有一種感覺,我做的事情非常愚蠢和misuing的catch
功能。任何幫助將非常感激。
可以發佈你的logcat異常嗎? –
嘗試刪除'intent.addCategory(Intent.CATEGORY_LAUNCHER);' –
getLaunchIntentForPackage()返回null如果「my.app.package」不存在,所以你得到一個NullPointerException在調用addCategory(...)意圖爲空。 –