问题 将URL中的HTTP参数与Android Intent Filters匹配


我正在尝试将一个intent过滤器放在一起,以便在浏览器中访问某个HTML URL时启动我的应用程序。当它是标准网址时,我没有遇到任何问题,例如www.stonyx.com。

但是,我需要将URL与HTTP参数匹配,例如www.stonyx.com/?pagename,它是后面的部分吗?我在匹配方面遇到了麻烦。

我尝试过使用android:path,android:pathPrefix和android:pathPattern,它们似乎都没有为我做...不确定是不是因为我做错了什么或者是因为它只是因为它是一个php带问号的路径。任何帮助都非常感谢。

附:这是我的意图过滤器目前的样子

<intent-filter>
  <action android:name="android.intent.action.VIEW"></action>
  <category android:name="android.intent.category.DEFAULT"></category>
  <category android:name="android.intent.category.BROWSABLE"></category>
  <data android:host="www.megaupload.com" android:scheme="http"></data>
</intent-filter>

8830
2017-09-01 22:49


起源



答案:


你不能。 :(

根据 http://developer.android.com/guide/components/intents-filters.html :

每个元素都可以指定URI和数据类型(MIME媒体类型)。 URI的每个部分都有单独的属性 - 方案,主机,端口和路径:

方案://主机:端口/路径

没有参数或查询字符串。 (因此,?标记之后的部分根本不与任何东西匹配)


11
2018-01-01 20:39



只是想让你知道,如果你想获得params,你总是可以从“data”元素中解析出来,这将为你提供整个URI。使用getIntent()。getData()来获取URI。 - PaulP


答案:


你不能。 :(

根据 http://developer.android.com/guide/components/intents-filters.html :

每个元素都可以指定URI和数据类型(MIME媒体类型)。 URI的每个部分都有单独的属性 - 方案,主机,端口和路径:

方案://主机:端口/路径

没有参数或查询字符串。 (因此,?标记之后的部分根本不与任何东西匹配)


11
2018-01-01 20:39



只是想让你知道,如果你想获得params,你总是可以从“data”元素中解析出来,这将为你提供整个URI。使用getIntent()。getData()来获取URI。 - PaulP