配置 UniversalLink
由于微信新版本SDK增加了安全验证,导致分享到微信的时候会有提示“应用未验证”的提示,如下图
造成了极其不好的用户体验,现将项目中配置 UniversalLink 的步骤记录一下,也将遇到的问题记录一下,希望有同样问题的小伙伴能帮到你,说明一下,项目中主要集成的是友盟:
- 友盟官网下载最新SDK,分享用的是6.9.10,集成到项目中
按照官网文档: https://developer.umeng.com/docs/128606/detail/129443
AppDelegate 添加如下方法
- (void)confitUShareSettings {
//配置微信平台的Universal Links
[UMSocialGlobal shareInstance].universalLinkDic = @{@(UMSocialPlatformType_WechatSession): kUniversalLink,
};
}
- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void(^)(NSArray<id<UIUserActivityRestoring>> * __nullable restorableObjects))restorationHandler {
if (![[UMSocialManager defaultManager] handleUniversalLink:userActivity options:nil]) {
NSLog(@"其他SDK的回调");
}
return YES;
}
-
创建一个以 apple-app-site-association 命名的文件,文件不能有后缀。文件内容如下图:
teamID在苹果开发者后台找,填好之后将此文件发给后台人员,让他放在相关域名的 根目录或者 .well-down 目录下,这里我遇到一个问题,放到根目录下不可以,放到well-down目录下就可以,建议两个目录都放上,此处相关域名指 eg: https://www.test.com Target - > Signing & Capabilities - > Associated Domains 添加对应的Domain, 且必须以 applinks 开头,冒号后面拼接 域名的地址(域名必须是https)eg: applinks:www.test.com
-
Target - Info 添加 weixinULAPI
-
微信开放平台添加对应的 UniversalLink,如图位置
eg: https://test.com/test/ 此处 test 指第2步 path的路径,微信文档建议要写,便于区分不同的APP
配置好以上步骤,然后分享微信第一次还是会有“未验证应用”的提示,看文档说是白名单的问题,然后第二天再试就正常了。
注意:文章中eg 例子不是随便写的,都有对应关系,如果UniversalLink配置失败,建议仔细比对查看
参考文章:
https://developers.weixin.qq.com/doc/oplatform/Mobile_App/Access_Guide/iOS.html 微信
https://www.cnblogs.com/guoshaobin/p/11164000.html git
https://developer.umeng.com/docs/128606/detail/150433?spm=a311a.7996332.0.0.46d53080SYoI6b#h2-u5FAEu4FE1u96C6u6210u66F4u65B03 友盟