我的测试uri字符串是
http://test.host.com/path/test.html?key1=val1&key2=val2
我在清单
中制作了intent-filter一个。方案&主持人(它有效,但我不想要)
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<data
android:scheme="http"
android:host="test.host.com"
/>
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
B中。 A&amp; path(pathPrefix,pathPattern)(不起作用)
<data
android:scheme="http"
android:host="test.host.com"
1. android:path="path/test.html" -> not worked (link to chrome broswer)
2. android:path="path" -> not worked (link to chrome broswer)
3. android:pathPrefix="path" -> not worked (link to chrome broswer)
4. android:pathPattern="user/invite.*" -> same (I do not know pattern)
/>
我想在仅(路径/ test.html)
时启动我的应用答案 0 :(得分:15)
你在开头就错过了斜线。以下应该有效:
android:path="/path/test.html"
OR
android:pathPrefix="/path/test.html"
答案 1 :(得分:5)
如果您需要启动您的应用仅限用于链接/path/test.html
然后仅在android:path
标记中使用data
属性
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<data android:scheme="http"
android:host="test.host.com"
android:path="/path/test.html" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
由于android:path
属性指定与Intent对象中的完整路径匹配的完整路径。
但是 android:pathPrefix
属性指定仅与Intent对象中路径的初始部分匹配的部分路径。
因此,当使用android:pathPrefix
属性而不是android:path
属性时,这意味着您的应用可能会开始/path/test.html
,/path/test.html?key1=value1
,/path/test.html?key1=value1&key2=value2
等
有关intent-filter
答案 2 :(得分:4)
pathPrefix
属性指定仅与Intent对象中路径初始部分匹配的部分路径。
android:pathPrefix="/path/"
也可以。