我正在配置我的应用以从其他应用中接收数据,如下所述: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
并避免在用户共享文本文件时列在共享菜单中吗?
答案 0 :(得分:0)
AFIK,文本文件和所选文本将触发相同的行为。我的建议可能不是您问题的直接解决方案。但是,我能想到的最接近的事情是让你的应用程序使用选定的文本和/或文本文件。因此,您的应用仍将列在文本文件的共享菜单中。
在您的应用中,只需检查
的值,检查共享数据是文本文件还是选定文本 getIntent().getExtras().getString(Intent.EXTRA_STREAM)
如果用户共享文本文件,则应该为您提供文件名。如果用户共享所选文本,则为Null
。