为什么android不处理在路径中有#的深层链接URL

时间:2017-05-29 08:42:05

标签: android url uri deep-linking deeplink

网址http://javaexample.com/#/topics是有效网址吗?

我尝试使用以下方法在应用中深层链接上述网址:

  <intent-filter android:label="@string/app_name">
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
            <data android:scheme="http"
                android:host="javaexample.com"
                android:pathPrefix="/#/topics" />
        </intent-filter> 

但终端投掷消息 -

活动未启动,无法解析Intent {act = android.intent.action.VIEW dat = http://javaexample.com/ ...

如果路径中有#,则

是网址http://javaexample.com/#/topics不是有效的网址吗?

1 个答案:

答案 0 :(得分:2)

网址中的#表示fragment component的开头,不能用于深层链接条件。即使您将片段结构化为外观,就像人眼的正常URL路径一样,计算机也不会以这种方式读取它。

您需要重新格式化网址,不要在路径前包含任何#字符。