2014-05-12 108 views
11

有什麼方法可以找出哪些瀏覽器設置爲Android設備上的默認瀏覽器?在Android設備上可能安裝了多個瀏覽器,但其中只有一個設置爲默認設置。我需要以編程方式找出它。如何在Android設備上找到默認瀏覽器設置

在此先感謝。早孕反應是感激..

回答

14

此代碼可以幫助你:

Intent browserIntent = new Intent("android.intent.action.VIEW", Uri.parse("http://")); 
ResolveInfo resolveInfo = getPackageManager().resolveActivity(browserIntent,PackageManager.MATCH_DEFAULT_ONLY); 

// This is the default browser's packageName 
String packageName = resolveInfo.activityInfo.packageName; 

,如果想要啓動它,請執行以下操作:

startActivity(getPackageManager().getLaunchIntentForPackage(packageName)); 
+1

如果探微希望應用程序的名稱(如「鉻」),使用這個: resolveInfo.loadLabel(getPackageManager())。toString(); –

+0

這似乎是完全錯誤的基礎http://stackoverflow.com/a/21257097/1168364 – lf215

1

歡迎您使用PackageManagerresolveActivity()試圖確定哪些活動(在什麼應用程序)將處理特定Intent。但是,這可能表示選擇器將處理請求,因爲沒有當前的默認值(例如,用戶剛剛安裝了新的瀏覽器,所以選擇器將出現在下一個Web瀏覽器請求中)。

相關問題