应用程序是否可以使用任何 Rss 提要订阅请求?
Is it possible for an Application to consume any Rss feed subscription request?
我正在开发一个 Android 应用程序,它将 "harvest" Rss 订阅,无论用户选择什么,例如来自 Android 设备内安装的网络浏览器等。
我认为所需要的只是在我的应用程序清单文件中定义正确的意图过滤器
我有以下
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="feed" />
<data android:scheme="rss" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:host="*"
android:pathPattern=".*xml"
android:scheme="http" />
<data
android:host="*"
android:pathPattern=".*feed=rss"
android:scheme="http" />
<data
android:host="*"
android:pathPattern=".*feed=atom"
android:scheme="http" />
<data
android:host="*"
android:pathPattern=".*feed=rdf"
android:scheme="http" />
<data
android:host="*"
android:pathPattern=".*feed.*"
android:scheme="http" />
<data
android:host="*"
android:pathPattern=".*rss.*"
android:scheme="http" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:mimeType="text/xml"
android:scheme="http" />
<data
android:mimeType="application/rss+xml"
android:scheme="http" />
<data
android:mimeType="application/rdf+xml"
android:scheme="http" />
<data
android:mimeType="application/atom+xml"
android:scheme="http" />
</intent-filter>
当我测试在我的测试设备Chrome 中点击以下 rss 提要 link 时
http://www.tandfonline.com/action/showFeed?ui=0&mi=hph1f7&ai=109&jc=naqi20&type=etoc&feed=rss
提要在 Chrome 内立即打开。
我的申请被忽略,因为 "target" 可能 link。
我的应用程序是否可以像这样向 "consume" link 注册其可用性?
我需要什么 Intent 过滤器?
Is it possible for my application to register its availability to "consume" links such as this?
不普遍。让我们回顾一下您当前的 <intent-filter>
与此 URL 相关的设置:
URL 没有 rss
或 feed
方案。 AFAIK,这些都不是特别常见的方案。
URL 的路径是 /action/showFeed
,它与您的任何 pathPattern
值都不匹配。提要没有标准化路径。
此服务器使用 application/xml
的 MIME 类型(使用 curl -v
测试),该类型有效但相当通用。您可以将该 MIME 类型添加到您的花名册中,但您将成为其他 XML 提要的候选者。
我正在开发一个 Android 应用程序,它将 "harvest" Rss 订阅,无论用户选择什么,例如来自 Android 设备内安装的网络浏览器等。
我认为所需要的只是在我的应用程序清单文件中定义正确的意图过滤器
我有以下
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="feed" />
<data android:scheme="rss" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:host="*"
android:pathPattern=".*xml"
android:scheme="http" />
<data
android:host="*"
android:pathPattern=".*feed=rss"
android:scheme="http" />
<data
android:host="*"
android:pathPattern=".*feed=atom"
android:scheme="http" />
<data
android:host="*"
android:pathPattern=".*feed=rdf"
android:scheme="http" />
<data
android:host="*"
android:pathPattern=".*feed.*"
android:scheme="http" />
<data
android:host="*"
android:pathPattern=".*rss.*"
android:scheme="http" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:mimeType="text/xml"
android:scheme="http" />
<data
android:mimeType="application/rss+xml"
android:scheme="http" />
<data
android:mimeType="application/rdf+xml"
android:scheme="http" />
<data
android:mimeType="application/atom+xml"
android:scheme="http" />
</intent-filter>
当我测试在我的测试设备Chrome 中点击以下 rss 提要 link 时
http://www.tandfonline.com/action/showFeed?ui=0&mi=hph1f7&ai=109&jc=naqi20&type=etoc&feed=rss
提要在 Chrome 内立即打开。
我的申请被忽略,因为 "target" 可能 link。
我的应用程序是否可以像这样向 "consume" link 注册其可用性?
我需要什么 Intent 过滤器?
Is it possible for my application to register its availability to "consume" links such as this?
不普遍。让我们回顾一下您当前的 <intent-filter>
与此 URL 相关的设置:
URL 没有
rss
或feed
方案。 AFAIK,这些都不是特别常见的方案。URL 的路径是
/action/showFeed
,它与您的任何pathPattern
值都不匹配。提要没有标准化路径。此服务器使用
application/xml
的 MIME 类型(使用curl -v
测试),该类型有效但相当通用。您可以将该 MIME 类型添加到您的花名册中,但您将成为其他 XML 提要的候选者。