2010-03-21 26 views
3

我有一個應用程序將通過「共享頁面」菜單項接受來自內置Web瀏覽器的URL。我使用發送意圖,它工作得很好。但是,我想接受一個URL並在後臺處理它,而不會將我的應用程序放在前臺。我不希望用戶必須實際離開網絡瀏覽器。它會通過Toast消息通知用戶已完成處理URL。我只是不確定應該使用哪種類型的活動。分享鏈接 - 在後臺執行操作

這種行爲的一個很好的例子是android市場中的「Read Later」instapaper應用程序。任何幫助將不勝感激。

回答

2

AFAIK,ACTION_SEND只適用於活動,不適用於服務。因此,您需要創建一個分享事物的活動。但是,如果你正在做的是顯示Toast並沒有實際活動的用戶界面,您可以使用Theme.NoDisplay從顯示了抑制,否則空活動UI:

<activity android:name="TwitterSender" 
     android:label="@string/sender_name" 
     android:theme="@android:style/Theme.NoDisplay"> 
    <intent-filter android:label="@string/sender_name"> 
     <action android:name="android.intent.action.SEND" /> 
     <data android:mimeType="text/plain" /> 
     <category android:name="android.intent.category.DEFAULT" /> 
    </intent-filter> 
</activity> 

你可以看到這種技術的完整的例子one of my book samples

+0

謝謝,這正是我想要的! – Justin 2010-03-23 12:06:59

1

您應該實現一個後臺服務,在完成處理url後通知您的應用程序。