我在我的应用程序中使用深度链接的概念,我真正想要的是,当我共享我的应用程序中的链接时,它工作正常,它会转到我想在我的应用程序中打开的活动,但问题是当用户没有这个时应用程序此链接通过手机浏览器打开,显示错误“未找到”,但如果未安装应用程序,我想转到 Play 商店。我应该尝试什么方法......
清单.xml:
<activity
android:name="package"
android:configChanges="orientation|screenSize|keyboardHidden">
<intent-filter android:autoVerify="true">
<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="www.example.com"
android:pathPrefix="/Home_page"></data>
<data android:scheme="https"
android:host="www.example.com"
android:pathPrefix="/Home_page"></data>
</intent-filter>
</activity>
可能有更好、更正确的方法,但你可以这样做:
- 在您的服务器上定义一些要检查的请求参数,例如
www.example.com/your_url?playmarket=true
,并制作包含它的共享链接。
- 在您的应用程序中,打开此链接时只需删除该链接
?playmarket=true
在处理 url 之前。
- 在您的服务器上检查,如果
?playmarket=true
存在,然后只需重定向到您的应用程序在 google play 中的页面。
这样您就可以打开应用程序中的链接,并且如果在浏览器中打开链接 - 您的服务器会将用户重定向到 google play。
检查是否需要重定向的另一种方法 - 将应用程序的用户代理设置为某个特定字符串,例如MyAppsAgent
,并检查服务器上的用户代理。如果它与 MyAppsAgent` 不同 - 重定向到 google play。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)