2017-02-28 123 views
1

我想添加通過我的應用程序共享圖像或鏈接的功能。 爲此,我在清單中添加這些過濾器通過我的應用程序Android共享鏈接和圖像

<activity android:name="MyActivity" 
      android:launchMode="singleTask" 
      android:screenOrientation="portrait" 
> 
    <intent-filter> 
     <action android:name="android.intent.action.SEND" /> 
     <category android:name="android.intent.category.DEFAULT" /> 
     <data android:mimeType="image/*" /> 
    </intent-filter> 
    <intent-filter> 
     <action android:name="android.intent.action.SEND" /> 
     <category android:name="android.intent.category.DEFAULT" /> 
     <data android:mimeType="text/plain" /> 
    </intent-filter> 
</activity> 

這個活動基本上是主要的一個,我的意思是,當用戶將啓動應用程序,本次活動將是開放的。

現在,當我滑動應用程序並通過我的應用程序共享一個youtube鏈接時,我得到的數據和它工作正常,問題是當我啓動應用程序,然後按主頁按鈕(在這種情況下,應用程序是在背景),然後嘗試共享一個YouTube鏈接,我沒有從意圖獲取數據。

有什麼建議嗎?

+0

請發佈您的數據處理代碼 – mhdjazmati

+0

您可以嘗試不使用android:launchMode =「singleTask」嗎? – jakubbialkowski

回答

1

看起來您不僅應該在onCreate中添加處理,還應該在onNewIntent方法中添加處理。 singleTask如果活動已經創建,則強制android通過onNewIntent提供意圖。

1

看來你正在將數據處理代碼放在你的onCreate()中。

嘗試將數據處理代碼放入onStart()中。

1

當您共享鏈接時,第三方應用程序會在您打開應用程序時爲您提供共享數據。但是,當您按下主頁按鈕時,數據不會被存儲。然後,當你回來時,數據將會丟失。

因此,當您從第三方應用程序中檢索數據(例如)時,您需要存儲數據。

現在,您可以使用onStart()函數檢索數據並顯示在您的視圖中。

提示:我想你可以使用Singleton(也稱爲反模式:read more)。

+0

難道你不知道Singleton Pattern也是反模式嗎? – jakubbialkowski

+0

它似乎只是改編我的答案! ,而不是發佈一個答案嘗試更新我的! 。 – mhdjazmati

+0

你在我寫作的時候發佈了你的答案。 –

相關問題