2013-07-01 90 views
1

我想在外部瀏覽器中打開一些鏈接。打開之前,我想顯示設備中的瀏覽器列表。我用Intent.ACTION_VIEW做了這個功能。但根據我的應用程序的要求,即使設備中只有一個瀏覽器應用程序,我也想顯示瀏覽器列表。有沒有人對此有任何想法。謝謝。在android中打開鏈接時顯示瀏覽器列表

回答

7

如果您有一個瀏覽器應用程序,則選擇器將不會啓動,該URL將被加載到該瀏覽器應用程序中。如果有兩個或更多的瀏覽器應用程序,Android系統推出的IntentChooser顯示所有瀏覽器的列表中的應用程序安裝在設備上,因此用戶可以選擇他喜歡的瀏覽器加載的網址:

Intent intent = new Intent(Intent.ACTION_VIEW); 
intent.setData(Uri.parse("http://www.stackoverflow.com")); 
startActivity(intent); 

編輯: 創建自定義意圖選配:

Intent intent = new Intent(Intent.ACTION_VIEW); 
intent.setData(Uri.parse("http://www.stackoverflow.com")); 

// Always use string resources for UI text. This says something like "Share this photo with" 
String title = getResources().getText(R.string.chooser_title); 
// Create and start the chooser 
Intent chooser = Intent.createChooser(intent, title); 
startActivity(chooser); 

參考this

+1

謝謝您的回覆。但我的要求是,即使Android設備中只有一個瀏覽器應用程序,我也想顯示IntentChooser。請指教。 – MithunRaj

+1

@MithunRaj你可以創建自己的'IntentChooser'並檢索設備中的所有瀏覽器應用程序(在這種情況下,它將是一個應用程序),然後顯示它,看看我的編輯 – Houcine

+0

這不工作.... –

2
Intent sendIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.maidofknowledge.com")); 
      Intent chooser = Intent.createChooser(sendIntent, "Choose Your Browser"); 
      if (sendIntent.resolveActivity(getPackageManager()) != null) { 
       startActivity(chooser); 
      } 

請參閱這篇文章intent with chooser dialog

相關問題