iOS之适配苹果Universal Links 和升级友盟的QQ
2020-06-09 本文已影响0人
糖糖本尊
b6xg.gif
这原来是苹果整的幺蛾子,打开第一个跟着做就行,一定要服务端配合
下面吗给出知乎的配置格式(https://oia.zhihu.com/apple-app-site-association),我是参考这个格式,其他的也行
9D49350E4EA7312A9BFEDFBDEEDA63F3.jpg
9EA067BC-BA23-40C3-8F85-527BB91DDAA5.png
A1095A83-8FB0-4502-804B-E808DD7D37E7.png
WechatIMG125.png
-
安逸的日子总是那么短暂,刚上完线,唏嘘人生是那么短暂而又漫长,刚准备进入安逸圈,结果晴天霹雳
WechatIMG120.png
这特么是啥 ,我没动啥代码哇,瞬间感觉蛋蛋有微微的疼痛,经过测试只有新系统(iOS13.5)的微信才会出现这个
YmDA.jpeg
这肯定是友盟整什么幺蛾子了,打开文档一看
WechatIMG121.png
瞬间明白了什么 ,我现在用的就是精简版 去看下pod 果不其然
WechatIMG122.png
这时候嘴角扬起一丝丝微笑,这不是升级就完事了,事情没你想的那么简单
q5p5.jpeg
pod完事了,运行结果掉不起微信了,没什么反应,控制台也不报错
5xGg.jpeg
行吧 不慌 再看看文档
集成最新的微信和QQ的完整SDK,需要设置合法的Universal Links 这一句 ,然后思路就来了 面向百度开发
WechatIMG123.png这原来是苹果整的幺蛾子,打开第一个跟着做就行,一定要服务端配合
下面吗给出知乎的配置格式(https://oia.zhihu.com/apple-app-site-association),我是参考这个格式,其他的也行
注意:如果你要分享到QQ,下面的格式一定要是/qq_conn/QQ互联给的AppId/
QQ互联文档有说明,不然会一直效验Universal Links失败,然后你分享到QQ提示未验证应用类的提示
9D49350E4EA7312A9BFEDFBDEEDA63F3.jpg
9EA067BC-BA23-40C3-8F85-527BB91DDAA5.png
A1095A83-8FB0-4502-804B-E808DD7D37E7.png
上面的图片里面需要点击效验,验证通过才能成功分享到QQ,提示报错,是因为你的path路径有问题,一定要按照QQ给的路径去配(/qq_conn/QQ互联给的AppId/)
{
"applinks": {
"apps": [],
"details": {
"AppId":"苹果证书的TeamId.你的Bundle.Identifier"{
"paths": [
"/app/***/*",
"/qq_conn/QQ互联给的AppId/*"
]
},
"webcredentials": {
"apps": [
"苹果证书的TeamId.你的Bundle.Identifier"
]
},
"activitycontinuation": {
"apps": [
"苹果证书的TeamId.你的Bundle.Identifier"
]
}
}
- 配置成功验证在Safari浏览器输入(https://你的域名/你的路径/)应该是这样的,就表示你配置成功*
1289056-eea1f1910ef67df2.jpg
下面你去运行还是一样的,下面分享集成友盟的坑
- 运行应该控制台log下面的错误
-canOpenURL: failed for URL: "weixinULAPI://" - error: "This app is not allowed to query for scheme weixinulapi"
干就完事了 打开info.plist 添加weixinULAPI
WechatIMG125.png
重要的事情说三遍
重要的事情说三遍
重要的事情说三遍
-
红色箭头的顺序不能写反了我发现在先后顺序也会掉不起来
WechatIMG126.png - 看到这里你基本上可以成功掉起微信,很可能会在微信成功几秒游,闪一下,那么不要慌,加上这段代码,你就可以了
此处建议卸载APP,然后加上下面代码后在重新运行
-(BOOL) application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray<id<UIUserActivityRestoring>> * _Nullable))restorationHandler {
if (![[UMSocialManager defaultManager] handleUniversalLink:userActivity options:nil]) {
// 其他SDK的回调
}
return true;
}
JBmqz.jpeg
基本上注意以上的,你就可以成功掉起微信分享