Android通过我的应用程序共享链接和图像

时间:2017-02-28 12:49:39

标签: android android-sharing

我想添加通过我的应用程序共享图像或链接的功能。 为此我在清单中添加了那些过滤器

<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链接,我不会从意图中获取数据。

有什么建议吗?

3 个答案:

答案 0 :(得分:1)

您似乎将数据处理代码放在onCreate()中。

尝试将数据处理代码放在onStart()中。

答案 1 :(得分:1)

当您共享链接时,第三方应用程序会在您打开应用程序时为您提供共享数据。但是当您按下主页按钮时,不会存储数据。然后,当您返回时,数据将丢失。

因此,当您从变量中的第三方应用程序检索数据时,您需要存储数据。(例如)。

现在,您可以使用onStart()功能检索数据并在视图中显示。

提示:我猜您可以使用Singleton(也称为反模式:read more)。

答案 2 :(得分:1)

您似乎不仅应在onCreate中添加处理,还应在onNewIntent方法中添加处理。 如果活动已经创建,singleTask会强制Android通过onNewIntent传递意图。