我们有一个 Android 应用程序,当用户重定向到自定义协议时就会启动该应用程序。
如果用户的设备上未安装该应用程序,我们希望用户重定向到该应用程序的 google/play 商店。
对于 iOS,我们使用这样的东西:是否可以为 iPhone 应用程序(例如 YouTube 和地图)注册基于 http+ 域的 URL 方案? https://stackoverflow.com/questions/1108693/is-it-possible-to-register-a-httpdomain-based-url-scheme-for-iphone-apps-like/1109200#1109200...但是这在安卓上不起作用。
这是基本工作流程:
- 用户点击我们网站上的链接
- 用户被重定向到
customProtocol://site.com?some=params
- 如果安装了应用程序,设备知道何时要做什么
访问了 customProtocol:// url 并且应用程序启动...但是
如果应用程序未安装,android只会给出一个页面不可用
错误页面;上面的 iOS 解决方案似乎不起作用。
关于如何在 Android 上实现这一目标有什么想法吗?只是安卓上不行吗?
关于如何在 Android 上实现这一目标有什么想法吗?
不使用“自定义协议”(或更准确地说,“自定义方案”)。 Android 上的模式是让您使用您控制的 URL。
例如,条形码扫描仪应用程序具有以下为其主要扫描活动定义 http://code.google.com/p/zxing/source/browse/trunk/android/AndroidManifest.xml:
<!-- Allow web apps to launch Barcode Scanner by linking to http://zxing.appspot.com/scan. -->
<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:scheme="http" android:host="zxing.appspot.com" android:path="/scan"/>
</intent-filter>
然后,任何链接http://zxing.appspot.com/scan http://zxing.appspot.com/scan将执行以下两件事之一:
如果从 Android 设备上的浏览器单击链接,并且安装了条形码扫描仪,则用户可以选择显示应用程序或显示与链接关联的网页
如果在其他任何地方单击该链接(没有该应用程序的 Android 设备、其他移动设备、台式机、笔记本电脑等),浏览器将显示该 URL 的网页,您可以在其中执行任何您想要的操作,包括可选地重定向到Play 商店
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)