我之前在我的 Android 应用程序中为我的网站页面实现了许多深层链接,比如产品页面、类别页面,一切都很好。
<activity
android:name=".activities.CategoryActivity"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<data
android:host="www.mywebsite.com"
android:pathPrefix="/category/"
android:scheme="http" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
</intent-filter>
</activity>
但目前我想在 Android 应用程序中添加一个指向我的网站主页的深层链接,我尝试了很多这样的事情:
<activity
android:name=".activities.HomeActivity"
android:screenOrientation="portrait">
<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="www.mywebsite.com"
// android:path="" // (1) not working
// android:pathPattern="{0,1}" // (2) not working
// android:path="/" // (3) it will work
// (4) I also removed the path and it worked.
android:scheme="http" />
</intent-filter>
</activity>
(3) 如果使用 adb 进行测试,它会起作用,但在 Chrome 谷歌搜索结果中,我的网站最后不会带有“/”。
(4) 它会起作用,但它也适用于所有其他深层链接!(对于http://mywebsite/product/434和http://mywebsite/category/434)此外,当我从 chrome Google 结果中单击我的主页链接时,我的应用程序的两个图标会出现!
如何解决此问题并为我的网站主页应用深层链接,而不会与其他深层链接冲突?
注意:我最后的手段是将所有深层链接重定向到特定的 xActivity,在 xActivity 内部,我将以适当的方式处理所有深层链接,但我认为这不是一个好主意。