使用Nginx 响应Json 报文的方式为IOS APP提供 Apple App Site Association Universal Links (通用连接)查询功能

问题概述:

开发的项目中IOS客户端早期是通过短连接跳转safari中介页面的方式实现唤醒APP,这种方式需要中介网页通过JS 延时执行的方式判断 系统是否安装了APP。

目前微信对Scheme 打开外部应用做了限制。IOS 要做到从微信直接打开APP 需要使用到 Universal Links 。IOS app 第一次启动时,系统默认从支持HTTPS的注册域名下获取 apple-app-site-association 文件Universal Links内容(https://xxx.com/apple-app-site-association,https://xxx.com/.well-known/apple-app-site-association)。

apple-app-site-association  文件内容格式:

{
	"applinks": {
		"apps": [],
		"details": [{
			"appID": "appID.com.xxxx",
			"paths": ["/app/*", "/"]
		}, {
			"appID": "appID.com.xxxx",
			"paths": ["/app/*", "/"]
		}]
	}
}

服务端通过反向代理服务器Nginx  直接响应静态字符串的方式 向IOS客户端 提供  apple-app-site-association查询功能,这种方式既可以避免因系统升级造成apple-app-site-association 查询不可用,也可以提升请求响应速度减轻后端 web 服务器不必要的压力。

具体配置方式:在nginx 配置文件 server 节点下新增 两个location 配置:

location /apple-app-site-association {

charset UTF-8;

default_type text/html;

return 200 '{\"applinks\":{\"apps\":[],\"details\":[{\"appID\":\"appID.com.xxxx\",\"paths\":[\"/app/*\",\"/\"]},{\"appID\":\"appID.com.xxxx\",\"paths\":[\"/app/*\",\"/\"]}]}}';

}

location /.well-known/apple-app-site-association {

charset UTF-8;

default_type text/html;

return 200 '{\"applinks\":{\"apps\":[],\"details\":[{\"appID\":\"appID.com.xxxx\",\"paths\":[\"/app/*\",\"/\"]},{\"appID\":\"appID.com.xxxx\",\"paths\":[\"/app/*\",\"/\"]}]}}';

}

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值