2011-04-13 81 views
4

有時我們可以看到,點擊一些「共享」按鈕後,會顯示一個可共享的列表。該列表似乎是動態生成的,而不是硬編碼的。如何實現Android應用程序的SHARE功能?

例如,我在手機上安裝了SpringPad,一些應用程序的共享功能可以通過SpringPad共享內容,但是如何知道我擁有SpringPad?

如何實現這樣的功能?謝謝。

回答

8

這是我的Android應用程序BBC新聞的實際代碼。它共享該頁面的URL。如果用戶安裝了Facebook或Twitter的應用程序,他們將提供機會分享這些服務,以及電子郵件等

 final Intent intent = new Intent(Intent.ACTION_SEND); 
     intent.setType("text/plain"); 
     intent.putExtra(Intent.EXTRA_TEXT, pageUrl); 

     try { 
      startActivity(Intent.createChooser(intent, "Select an action")); 
     } catch (android.content.ActivityNotFoundException ex) { 
      // (handle error) 
     } 
+0

謝謝,這正是我想要的:D – shihpeng 2011-04-18 14:35:44

4

如果你想添加您的應用程序在此列出了需要申報<intent-filter>在應用程序的AndroidManifest.xml和您的目標活動onCreate()中,您必須處理此意圖。

Example(我從電子郵件應用程序得到它並編輯了一下)。

Docs about Intents and Intent Filters

關於意圖過濾器的AndroidManifest

元素例如實現見source of Android Email application(文件AndroidManifest.xml中和src/COM /安卓/電子郵件/活動/ MessageCompose.java(中的onCreate() ))。

+0

非常感謝,如果我需要實現用於共享內容的東西,這將會很有幫助。 – shihpeng 2011-04-18 14:37:39

相關問題