2015-12-02 128 views
0

我正在为网页构建一个伴侣应用程序。我应该打开该页面上的链接与应用程序。所以我加了一个意图过滤器,以我的活动,像这样:通过应用程序在网站上打开链接

<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="http" /> 
    <data android:host="www.mywebpage.com" /> 
    <data android:pathPrefix="/" /> 
</intent-filter> 

当我上搜索我的谷歌网站,并点击一个结果,这个工程。提供“打开”工作表,我可以选择我的应用程序来打开链接。当我在地址栏中输入我的网站的网址时,表单不会显示。然后,我可以在浏览器中浏览网站(我正在使用Chrome),并且我可以单击每个链接,而无需询问每个链接是否要打开与该应用程序的链接。

当点击一个可以用我的应用程序打开的链接时,是否有任何方式总是显示“打开方式”表单?我意识到,当用户在地址栏中明确输入URL时,用户可能想浏览浏览器中的网站,但打开分享表就是我应该实现的。

+0

据我所知,你不能。仅当链接被点击时,深层链接才会被处理。 –

回答

1

Google似乎对Chrome处理URL的方式做了一些修改。 现在他们的政策是“如果用户在系统的地址栏中输入URL,那么用户的意图是访问相关页面,我们不相信用户打算去应用程序。 ,将用户重定向到应用程序是一种糟糕的用户体验。“

你可以在这里找到关于这个问题的更多信息 - https://paul.kinlan.me/deep-app-linking-on-android-and-chrome/

+0

那么,这就解释了为什么我以为我记得我前段时间做过这件事,但无法让它继续工作了。谢谢! – cargath

相关问题