这两天要给app添加一个分享功能,这里我用的是友盟第三方集成。按照友盟文档一顿猛虎操作,发现分享的时候微信是可以调起来,但是立马跳回自己的app,期间还出现这个界面,大约持续了一秒左右。
截图.PNG
反复操作都是一样的状况,根本没出现别人的二次跳转出现授权界面,按照网上的操作试了下:
1、删除app,重新安装
2、重启Xcode
3、重启手机
以上操作尝试之后没啥用,于是我又从头到尾把我的配置检查了一遍:
1、白名单设置了
2、URL scam设置了
3、授权文件里也勾选了Associated Domains
4、Xcode里也设置了Associated Domains
5、通用链接也是按照标准设置的,并且相应的json配置也是符合标准,并放在服务端目录下
6、微信开放平台也设置了通用链接并通过
Appdelegate.m也是按照友盟的文档,设置了confitUShareSettings和configUSharePlatforms方法
7、最终解决的方法是按照以下方法添加代理:
-(BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray<id<UIUserActivityRestoring>> * _Nullable))restorationHandler{
if(![[UMSocialManager defaultManager] handleUniversalLink:userActivity options:nil]){
// 其他SDK的回调
}
return YES;
}
都写到这里了,我顺便放一张json文件的配置:
json配置.png
关于通用链接的配置可以参考这篇文章:
https://www.jianshu.com/p/ef0cd17a35d6
后续:
这两天我给另一个老项目添加友盟分享,调用分享微信再次遇到这个问题。
解决方案如下~~~
由于是多个app公用同一个域名下的通用链接配置文件,所以这边先放上我的配置图:
配置.png
紧接着微信开放平台配置的Universal Links不再是https://xx.xxx.cn/app/,而是
https://xx.xxx.cn/ntds/
项目里配置的confitUShareSettings方法改一下(最后面不再是/app/结尾)
confitUShareSettings.png
项目里Associated Domains的配置不变
AssociatedDomains配置.png
写代码就是一个不断成长的过程,希望这篇文章可以帮助到大家。
网友评论