android - 什么是 intent-filter 而不是在共享 url 时仅在共享菜单中显示应用程序?

标签 android url share intentfilter

我查看了 intent-filter 文档,但我无法弄清楚这个特定的 intent-filter。

我希望使用 ACTION_SEND,因为我只希望该应用显示在其他应用的“共享”菜单中。如果 Intent 文本是 url,我只想显示在共享菜单中。例如,从 Android 浏览器的共享菜单共享的内容。如果应用只是文本而不是 URL,我不希望该应用出现在共享菜单中。

我目前拥有的是:

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

但是,这将接收任何文本,而不仅仅是 url。

谢谢

最佳答案

您可以创建IntentFilter以编程方式处理对象,并且它们可以在 URI 架构等方面进行过滤……更多控制。

<罢工>

我认为子类化 IntentFilter 会给你更多的事件,但他们在“匹配”final 上做了所有的变化,所以你不能在子类中覆盖它们。呸!

Eurika!

您可以指定数据“方案”而不是 mimetype。只需请求“http”和“https”(在单独的 Intent 过滤器中?)。

<intent-filter>
  ...
  <data android:scheme="http"/>
</intent-filter>

关于android - 什么是 intent-filter 而不是在共享 url 时仅在共享菜单中显示应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4109715/

相关文章:

c# - WinRT C#,Facebook 共享选项里面的共享魅力重定向到自己的控制?

android - MVP 模式 Android 演示者中的重复方法

android - Facebook SDK : invalide scope : basic info use public_profile, 用户 friend 代替

Android:我如何获得最近应用程序的启动 Intent ?

json - 检索 Json 数据 - 如何?

javascript - 设置 Facebook 分享按钮 2016 的缩略图?

swift - GameScene 分享按钮

android - 将 LRUCache 对象存储在应用程序单例中是个好主意吗?

javascript - javascript、jquery 上的 qts

java - 为什么我无法下载任何网站的任何 html 页面?(我正在使用 android studio)