APP中有需要跳转微信小程序的需求,记录一下接入过程
步骤一:配置Associated Domains
1.登录苹果开发者中心,找到对应的Identifier勾选 Associated Domains,重新配置下对应的描述文件,在Xcode中重新导入描述文件
2.在项目中找到target,打开Associated Domains开关,将Universal Links域名加到配置上,applinks:你的域名,比如 applinks:baidu.com。
iOS9引入Universal Links跳转方案,Universal Links 是通过域名下apple-app-site-association来确定app,在微信开放平台创建APP的时候需要填写。
3.服务器配置apple-app-site-association
(1)服务器必须要支持https,.创建一个json文件,名称为 apple-app-site-association,⚠️该文件不可带 .json 的后缀名,apple-app-site-association 文件放在https服务器的根目录下。多个app可共用一个文件,在details里面写不同的appID。
(2)apple-app-site-association文件格式
{
"applinks":{
"apps":[],
"details":[
{
"appID":"teamID.app1的Bundle identifier"
//paths是配置可以唤醒app的路径,
"paths":["/app1path/*"],
},
{
"appID": "teamID.app2的Bundle identifier",
"paths": ["/app2path/*"]
}
]
}
}
(3)验证apple-app-site-association文件,验证网址
显示如图即为配置成功
步骤二 集成微信sdk
1.向微信注册你的应用程序id和Universal Links。
请到微信开放平台 进行登记。
2.在微信开放平台,创建app配置Universal Links,验证Universal Links是否配置好,可以在手机的safari中,输入配置好的地址,跳转之后下拉网页,看下是否有出现你APP的logo和打开按钮,如果出现了,就说明配置的Universal Links是正确的.
2.移动应用跳转到小程序示例:
WXLaunchMiniProgramReq *launchMiniProgramReq = [WXLaunchMiniProgramReq object];
launchMiniProgramReq.userName = userName; //拉起的小程序的username
launchMiniProgramReq.path = path; 拉起小程序页面的可带参路径,不填默认拉起小程序首页,对于小游戏,可以只传入 query 部分,来实现传参效果,如:传入 "?foo=bar"。
launchMiniProgramReq.miniProgramType = miniProgramType; //拉起小程序的类型
return [WXApi sendReq:launchMiniProgramReq];
回调说明
-(void)onResp:(BaseResp *)resp
{
if ([resp isKindOfClass:[WXLaunchMiniProgramResp class]])
{
NSString *string = resp.extMsg;
// 对应小程序组件 <button open-type="launchApp"> 中的 app-parameter 属性
}
}