universal是iOS9后新增的特性,通过universalLink可以快速打开APP。相较于URL scheme的方案,有如下优点:
本次替换是因为微信跳转小程序,WXOpenSDK的api必须传universalLink校验,所以研究了下。
添加通用链接的步骤简单分为下面三步:
apple-app-site-association文件格式如下
注意apple-app-site-association文件不要加后缀
appID的格式为:teamID.explicit ,位置如下图
appID 密钥的值是团队ID或应用程序ID前缀,后跟捆绑软件ID。对应上面红框中的两个值
paths 键的值是一个字符串数组,用于指定应用程序支持的网站部分以及您不想与该应用程序关联的网站部分。
要指定不应作为通用链接处理的区域,请在路径字符串的开头添加“ NOT ”(包括之后的空格 T )。
例如,下面所示的文件可以防止 /videos/wwdc/2010/* 通过更新 paths 数组,将网站区域视为通用链接,如下所示:
注意
1.用于在 paths 数组中指定网站路径的字符串区分大小写;
2.使用*指定整个网站;
3.包含特定的URL,例如/wwdc/news/,以指定特定的链接;
4.用添加 到特定的URL,例如NOT /videos/wwdc/2010/ ,可以指定网站的一部分;
5.使用?匹配单个字符,/videos/wwdc/201?/*
创建apple-app-site-association文件后,将其上传到HTTPS Web服务器的根目录或者.well-known子目录。
需要通过HTTPS在https://<domain>/apple-app-site-association或https://<domain>/.well-known/apple-app-site-association进行访问,而无需任何重定向;
其中<domain>路径为我们在APP内applinks中配置的路径,下面会说到。
1.给后台的apple-app-site-association文件不能有后缀;
2.注意检查格式,防止有其他字符或者乱码导致无法跳转;
1.把链接粘贴到备忘录,点击看能否直接跳转到APP,或者长按链接看有没有d出跳转到APP的选项;
2.通过苹果API工具 App Search API验证工具 校验,结果以1为准;
3.你将要测试的网址在safari中打开,在出现的网页上方(the Smart App Banner),可以看到有在”XX”应用中打开
如下图
Xcode内设置如下图,Domains格式applinks: offlinetest.e***x.net ,offlinetest.e***x.net对应2.2的<domain>
当点击某个链接,直接可以进我们的app了,但是我们的目的是要能够获取到用户进来的链接,根据链接来展示给用户相应的内容。
我们需要在工程里的实现 AppDelegate 里对应的方法:
通过2.2.3校验通过,但是在跳转微信时候还是提示universal link校验不通过。分析原因是微信开放平台配置的universalLink和当前链接不匹配,去更新就行
某系第三方,如sharaSDK提供了一个universalLink可直接使用,当然也可以选择自己生成
通过其他平台管理: 通过openinstall平台
参考链接: 苹果通用链接
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)