iOS 微信打开第三方应用(微信跳转第三方app)(Universal Links)
iOS应用可以使用 URL Schemes 进行应用间的跳转或实现网页打开应用的功能,这种跳转是协议跳转。
要应用间能跳转就要遵循URL Schemes协议。
要网页跳转应用网页就要遵循URL Schemes协议。
所以这就出现了微信或QQ等知名应用不能打开第三方应用的问题,不能打开是因为微信和QQ使用的是自己研发的QQ浏览器,他不遵循URL Schemes这个协议。
实例演示:(下载 卡惠应用 查看效果):注: kahui.huankaun.com 就是你服务器的域名
1,问题具备的场景
(1)第三方应用集成了友盟分享到QQ和微信的功能
(2)第三方应用分享了一个web页面到微信或QQ
(3)打开分享的web页面,点击上面的某一个按钮
(4)如果用户安装了该应用,直接打开应用根据web地址中的参数跳转到对应的页面
(5)如果用户没有安装应用,直接跳转到appStore
2,实用的技术:iOS9 之后提供的 Universal Links 功能
3,实现步骤
(1)创建一个json文件,名称必须为 apple-app-site-association,⚠️该文件不可带 .json 的后缀名
apple-app-site-association 文件必须放在https服务器的根目录下,例:https://kahui.huankaun.com 这个路径下 ⚠️一定是根目录,也就是说该文件必须是一级目录,供下载使用
apple-app-site-association 文件格式:如代码 1
teamID:打开苹果官网,点击Account,点击左边栏的 Membership,查找teamID 如图 1
paths:定义的web页面的地址,*表示 kahui.huankaun.com 这个路径下的任何子路径,也可以指定固定跳转的页面例:/index.php
(2)确保使用 https://kahui.huankaun.com/apple-app-site-association 这个链接可以在 苹果的验证网站 访问得到,正确的访问结果为 如图2
(3)进入开发者网站,找到你自己的bundleId,可以点击edit按钮,开启associate domains,并创建相应的provisioning Profiles,如图 3
(4)在项目的Capablities中开启Associated domains,添加 applinks:kahui.huankaun.com,如图 4
(5)在appdelegate中实现上面这个方法,当使用Universal Links唤醒app时就执行这个方法:如代码 2
(6)快捷验证,在备忘录中输入https://kahui.huankaun.com/...,常按这个链接,出现使用第三方应用打开表示已经成功,如图 5
(7)当没有安装该应用时的处理方式是:上传该html文件到 kahui.huankaun.com 路径下,如代码 3
代码1
{"applinks": {"apps": [],"details": [{"appID": "teamID.bundleId","paths": ["*"]}]}
}
代码2
- (BOOL)application:(nonnull UIApplication *)application continueUserActivity:(nonnull NSUserActivity *)userActivity restorationHandler:(nonnull void (^)(NSArray * __nullable))restorationHandler{}
代码3
<!DOCTYPE html>
<html lang="en" >
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"><meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" /><meta http-equiv="Pragma" content="no-cache" /><meta http-equiv="Expires" content="0" /><meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width"><title>上新-跳转中...</title></head>
<body>
<script type="text/javascript">setTimeout(function(){window.location = "第三方在应用宝的下载链接"},3000)</script></body>
</html>
iOS 微信打开第三方应用(微信跳转第三方app)(Universal Links)相关推荐
- Android平台好友点击微信分享的内容后跳转来源App的实现方案研究
很多时候我们的应用在使用微信分享内容之后,希望其他用户点击该分享内容能够跳转到我们的App,以实现闭环,这样的分享才是最有价值的.这种需求涉及到不同应用之间的交互,虽然微信提供了分享SDK,但仍然有不 ...
- 微信或QQ屏蔽域名,爆红域名如何在微信打开,如何进行微信域名防封?
为什么关心这种技术?因为我经常听到身边搞微商.搞微信项目的朋友都在叫苦连天,由于微信域名屏蔽.微信域名被拦截.弄得他们尸横遍野,损失的连过年回家的路费都没了,曾经的叱咤风云一下变成了今日的倒亏损.腾讯 ...
- ios应用跳转小程序Universal Links链接验证不通过
iOS平台 iPhone 应用下载地址:https://apps.apple.com/cn/app/idappid Bundle ID:com.company.ttttt 测试版本Bundle ID: ...
- 微信公众号开发之实现自定义微信公众号菜单和跳转第三方网页
自定义菜单创建接口: http请求方式:POST(请使用https协议) https://api.weixin.qq.com/cgi-bin/menu/create?access_token=ACCE ...
- 微信小程序使用nginx跳转第三方url
先在微信公众平台配置号域名 服务器域名和业务域名都配置好 然后微信小程序使用 web-view标签进行跳转 <web-view src="https://你自己的域名/如果有参数带上& ...
- 微信公众号H5页面跳转至app的某个页面,如果手机内没有app,则进入下载页面
安卓实现方法: $(function(){ var Id = getParameter("goodsid"); //此操作会调起app并阻止接下来的js执行,进 ...
- 实现微信,头条等外链跳转支付宝app领取赏金红包
摘要 支付宝近期又开启了赏金红包活动,而且红包的额度还挺大,基本上都在二块钱到三块钱范围,有的甚至领取到了好几十块钱的红包. 可是这样推广可不是办法,又要复制又要打开支付宝又要点领取,太麻烦了. ...
- 微信分享和微信H5跳转到APP开放标签wx-open-launch-app使用及样式设置
H5.微信.App唤端相关 一.微信分享 二.浏览器H5跳转到APP 三.微信H5跳转到APP 一.条件说明 二.文档 三.重要的设置 四.注意点 五.样式设置 一.微信分享 参看:微信分享:后端参数 ...
- 从客户端到服务器端,适配微信iOS OpenSDK中的Universal Links
一.起始 微信iOS OpenSDK1.8.6版本开始,使用了iOS中的Universal Links.iOS 工程用pod一更新,使用到相关API的地方,全部报错,仔细一查看,API接口做了前面的改 ...
- iOS开发 APP拉起微信小程序Universal Links配置
APP中有需要跳转微信小程序的需求,记录一下接入过程 步骤一:配置Associated Domains 1.登录苹果开发者中心,找到对应的Identifier勾选 Associated Domains ...
最新文章
- Microbiome: 绝对定量环境样本细菌、真菌、真核群落丰度
- mysql数据库 中文乱码_在CMD中操作mysql数据库出现中文乱码解决方案
- 【 C 】深入了解递归
- linux vim 字体大小,Linux学习—vim大全
- 为什么要用unittest
- Cookie和Session-学习笔记03【Session快速入门、Session细节】
- 《Jersey用户指南》翻译邀请
- 工具箱 - Putty 安装调试3
- C++头文件,预处理详解
- python plot坐标轴_修改python plot折线图的坐标轴刻度方法
- 摄影光学与镜头pdf_摄影摄像基础pdf
- Pygame做一期吃豆子游戏
- `英语` 2022/8/23
- 如何下载python模块_python安装模块与包
- 典型二阶系统的计算机仿真,二阶系统电路设计_RLC串联二阶电路实验报告
- excel筛选时保留下面某些行不被筛选
- 机器学习(一)--输入空间、特征空间、输出空间
- Matlab学习记录-矩阵的生成
- 不越狱无插件实现 sparrow 推送通知
- acr122_ACR的完整形式是什么?