我想添加通过我的应用程序共享图像或链接的功能。 为此我在清单中添加了那些过滤器
<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 :(得分:1)
您似乎将数据处理代码放在onCreate()中。
尝试将数据处理代码放在onStart()中。
答案 1 :(得分:1)
当您共享链接时,第三方应用程序会在您打开应用程序时为您提供共享数据。但是当您按下主页按钮时,不会存储数据。然后,当您返回时,数据将丢失。
因此,当您从变量中的第三方应用程序检索数据时,您需要存储数据。(例如)。
现在,您可以使用onStart()
功能检索数据并在视图中显示。
答案 2 :(得分:1)
您似乎不仅应在onCreate
中添加处理,还应在onNewIntent
方法中添加处理。
如果活动已经创建,singleTask
会强制Android通过onNewIntent
传递意图。