一、需求描述
写这篇文章,也是缘于运营的一个需求:在 App 运营过程中,会有大量的推广短信,里面附有链接,目的是引导用户参与活动。如果用户手机没有安装我们的 App 就引导其去下载页,如果用户已经安装了我们的 App 就直接在 App 中打开对应的活动。
二、方案讨论
对需求进行分析,归纳起来实际上就是一个问题,如何从短信唤起App?
这里有两种方案。
第一种,也是最理想的直接从短信唤起,也就是点击短信中的链接后如果安装了 App 就跳转到 App,如果没有安装就在浏览器打开对应页面
方案一 : 点击短信直接唤起
第二种,经浏览器中转唤起,也就是点击短信链接后先用浏览器打开对应页面,在页面中进行“判断”(实际上不是真正的判断,而是发一个scheme给系统)如果安装了 App 就跳转到 App,否则就停留在当前页。
方案二 : 点击短信经浏览器中转唤起
下面将对第二种方案进行分析、实施。
三、经浏览器中转唤起 App
用户往往会首先跳转到浏览器(对应的是下载页面),经过浏览器中转,唤起 App。
而实现这一途径我们可以采用Shareinstall。
Shareinstall减少了应用的代码冗余,提供了通用的一键拉起接口。通过 URL Scheme 和 Universal Links 实现在不同浏览器中拉起APP。
以下是Shareinstall的工作原理:
(1)
由于安全隐私的原因,目前在网页端是无法通过js脚本直接判断某个APP是否已经安装,只能首先通过js尝试性的启动app,然后再进入安装流