问题:
APP拉起微信显示正在连接,然后又跳转到APP,之后又拉起微信。相当于两次跳转
解决方案:
apple-app-site-association文件放置有问题。
整体流程:
微信开发者平台申请
1、要去微信开发者平台申请AppID以及AppSecret
申请地址:https://open.weixin.qq.com
下面就是需要填写的信息
第一步:
第二步:
这里可以选择需要申请的平台,每个平台后面需要填写的信息是不一样的。
第三步:
这里面需要注意的是links的填写。需要和APP配置里面的保持一致。
建议最好是APP URL连接的域名,例如:https://testurl.com/
全部信息提交之后提交审核,大约需要一天的时间就可以通过。通过之后就可以得到AppID和AppSecret。之后我们就可以去项目里面进行配置了。
服务端配置
1、新建一个txt文件,命名为apple-app-site-association,里面的填写的内容如下
{
“applinks”: {
“apps”: [],
“details”: [
{
“appID”: “teamID.bundleID”,
“paths”: [ “*” ]
}
]
} }
teamID 是appstore账号登录进去-编辑个人资料信息-团队ID
bundleID是项目里面的bundle Identifier
2、将该文件需要放到微信申请的时候填写的links域名的根目录下
3、测试该文件是否生效。使用links+该文件名称,在Safari浏览器里面打开下载来了,看是否能够正常打开,里面的内容是和上面填写的一样。例如:https://testurl.com/apple-app-site-association
APP配置
1、打开项目,选择targets-signing&capabilities-Associated Domains
如果没有这个选项就点击左上角的加号会弹出一个视图,再选择Associated Domains进行添加
在下面填写links,这里要和微信申请保持一致。例如:applinks:testurl.com
appstore里面也需要选择Associated Domains
2、info配置
3、Appdelegate
微信注册方法使用的了微信申请的appid和links。
其他两个方法是在测试的时候调用的,上线的时候可以删除。
设置微信的回调方法
4、微信分享方法调用
在需要使用分享功能的地方使用下面的方法。
WXWebpageObject *webpageObject = [WXWebpageObject object];
webpageObject.webpageUrl = @“分享的链接”;
WXMediaMessage *message = [WXMediaMessage message]; message.title = @“标题”;
message.description = @“描述”;
[message setThumbImage:[UIImage imageNamed:@“缩略图.jpg”]];
message.mediaObject = webpageObject;
SendMessageToWXReq *req = [[SendMessageToWXReq alloc] init];
req.bText = NO;
req.message = message;
req.scene = WXSceneSession;
[WXApi sendReq:req];
上面的分享方式在微信官方文档里面也有,里面细分的更多,可以参考。微信分享官方文档最主要的是我们的项目配置是正确的。
links的配置注意两点:
1、apple-app-site-association文件内容要配置正确。
2、apple-app-site-association文件放置在域名的根目录下,这一步是需要后台人员操作。
Associated Domains的配置需要注意:
1、项目里面配置的Associated Domains要正确:applinks:testurl.com。
2、登录appstore账号,选择identifiers,找到项目对应的ID,点击进去,勾选Associated Domains选项,然后保存。
其他的配置都是正常的。目前是没有什么需要注意的了。