关于微信中直接调起 Native App 的调研报告
来源:互联网 发布:北京万国数据员工待遇 编辑:程序博客网 时间:2024/06/06 22:35
注:本篇报告只对市面上的 Android 以及 IOS 的机器做兼容。
众所周知,在 IOS8 以下版本及 Android 的微信中我们是无法直接调起 app 的,但是发现业内的包括头条和微博是可以直接在微信端内直接调起 app 的。找了很多博客,发现没有详细的方法介绍,特此记录下来。
正常的,我们在浏览器之中可以使用 Android 的 Schema 在页内进行 app 的唤醒(这里面存在一些坑,比如手百,一直想不通一个浏览器会去拦截 Android Schema ),但是微信对此做了拦截,无法通过正常的方案去调起。对此,有个不错的替代方案,就是腾讯的亲儿子 —— 应用宝。
腾讯开放平台出了一个叫做微下载的解决方案,可提供一个二维码同时对应 Android 以及 IOS 的 app 下载,也提供了 AppLink 功能,其可以使得你直接调转 app 唤醒后的指定活动页面。下面来介绍一下详细的 hack 流程。(无需装机应用宝,通过应用宝 H5 页面唤醒)
(1)首先你的应用需要满足一下几点硬性要求:
应用已发布在应用宝中。
以下四点任意满足一点即可。
—— 应用评级达到A级;
—— 应用微下载日访问量达到10W/天;
—— 项目/应用参加腾讯“双百”扶持计划;
—— 应用由腾讯投资占股。
(2)获取你的应用宝渠道包链接。(如下图)
这里面存在了一个 ckey 的问题,因为之前抓取了微博的 AppLink,发现链接中有 ckey,但自己这边却不知道如何拿到,如这个链接:
http://a.app.qq.com/o/simple.jsp?pkgname=com.sina.weibo&ckey=CK1327948375357
可以直接在应用宝中调起微博,经过调研发现 ckey 是渠道包链接,如果是想区分渠道来源的话可以加上ckey参数,不加也不影响使用,直接在主链接后加参数就可以了。
那么什么是渠道包?这里解释一下。(如下图)
简单的总结一下:这个就是可以上传不同的渠道包,监控不同渠道的效果的。
(3)使用 AppLink 跳转至 app 端内指定活动页面。(注:此 link 通用 Android 以及 IOS 两端,但是 IOS8 以及以下版本不能确定是否调起成功,不成功则通过 app store 做迂回方案,据说是市面上 IOS8- 的用户较少,官方不能确定)
AppLink 的跳转需要 Android Schema 的支持,需要将 Android Schema 交予应用宝的对接人员进行绑定(这里需要符合(1)中所述的条件),绑定过即可生效。链接的拼接方式如下:
如你的渠道包是这样的:
http://a.app.qq.com/o/simple.jsp?pkgname=com.xx.abc
你的活动页面是这样的:
https://www.a.com/b/c.html
你的页内唤醒链接是这样的:
appname://a/b?url=…
那么你的按照如下方式进行拼接即可:
http://a.app.qq.com/o/simple.jsp?pkgname=com.xx.abc&android_schema=appname://a/b?url=https://www.a.com/b/c.html
请注意:上述链接还有一些问题,需要对活动页面的 url 进行 encode,包括 ‘/’ 也是需要被转义的。
当你做完上述步骤之后,你就可以测试你的链接是否生效了。
那么最后,IOS9 如何做到微信端内调起呢(不止于微信,微博分享也可直接调起),就是使用 UnversalLink 了,具体方法可参考百度,或者询问 IOS 开发人员。
总结:有一个弊端,IOS8 以下版本以及 Android 虽然可以在腾讯系的产品中通过此种方式调起,但是在微博中的 link 还没有找到好的替代方案(目前只知道浏览器迂回)。如有解决方案,可以留言讨论。
此处附上 IOS9+ 微信端内调起解决方案: 戳我
- 关于微信中直接调起 Native App 的调研报告
- App开发日报 2015-04-28 React Native 调研报告
- React Native 调研报告
- 社会实践调研报告-关于大学生网络生活的调研报告
- 通过web页面调起native App
- 关于云计算的调研报告
- 《毛泽东思想和中国特色社会主义理论体系概论》课程 社会实践调研报告 题目:关于大学生网络生活的调研报告
- 调研报告的格式
- 虚拟现实的调研报告
- 关于在webview中直接调起系统的打电话功能
- Rtos的调研分析报告
- JSON技术的调研报告
- 关于app 的稳定性的报告
- broswer 调起APP
- 关于spec2006的调研
- 关于freespace的调研
- mac的终端中直接调起sublime
- html5的input file 调起手机相册且可以调起摄像头 直接调取摄像头
- Animation动画详解(七)——ObjectAnimator基本使用
- 出租车费
- 堆排序算法
- 发现“微软雅黑”字体的一个漏洞!
- 51 nod 1103 N的倍数(抽屉)
- 关于微信中直接调起 Native App 的调研报告
- mybatis中动态sql的使用
- bzoj1835 [ZJOI2010]base 基站选址(dp+线段树优化)
- HDU 1000 A+B Problem I JAVA
- 对mysql数据库中字段为空的处理
- C# XML转Json
- Quartz之schedule定时任务
- Android中LeakCanary检测内存泄漏
- spi bitbang实现原理分析