分享到Android应用程序 - 限制为“text / plain”

时间:2016-11-04 18:42:01

标签: android text android-sharing

我正在配置我的应用以从其他应用中接收数据,如下所述:https://developer.android.com/training/sharing/receive.html

我正在使用以下intent过滤器来接收纯文本:

<intent-filter>
    <action android:name="android.intent.action.SEND" />
    <category android:name="android.intent.category.DEFAULT" />
    <data android:mimeType="text/plain" />
</intent-filter>

但是,我的应用程序列在文本文件的共享菜单中(除了纯文本),并且使用text/*进行调用,即使我特别列出了text/plain。知道如何将传入数据限制为text/plain并避免在用户共享文本文件时列在共享菜单中吗?

1 个答案:

答案 0 :(得分:0)

AFIK,文本文件和所选文本将触发相同的行为。我的建议可能不是您问题的直接解决方案。但是,我能想到的最接近的事情是让你的应用程序使用选定的文本和/或文本文件。因此,您的应用仍将列在文本文件的共享菜单中

在您的应用中,只需检查

的值,检查共享数据是文本文件还是选定文本

getIntent().getExtras().getString(Intent.EXTRA_STREAM)

如果用户共享文本文件,则应该为您提供文件名。如果用户共享所选文本,则为Null