对接微信,配置通用链接
2020-11-04 本文已影响0人
不泯iOS
1.首先创建一个名为apple-app-site-association(无扩展名)的文件,文件内容如下:
{
"applinks": {
"details": [
{
"appIDs": [ "ABCDE12345.com.example.app" ],
"paths": [ "/ios/*" ]
}
}
注:其中ABCDE12345为teamID,com.example.app为应用程序的BundleId。teamId和BundleId中间要用.连接
2.关于teamId
在苹果开发网站的,登录您开发团队的苹果账号,如下图标注的,就是我们需要的teamId。
teamid.png
3.关于paths的配置
也可使用通配符来访问全部网站 "paths":[""]
4.关于开发者帐号的配置
5.xcode配置
6.配置完成后,将该文件放在服务端根目录,生成的链接,可以成功下载该文件
链接的格式:正式域名/apple-app-site-association。如:https:www.xxxx.com/apple-app-site-association
必须要是https
7.初始化代码:
// 微信SDK注册,universal link
[WXApi registerApp:APP_ID universalLink: UNIVERSAL_LINK];
........
........
#pragma mark Universal Link
- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray<id<UIUserActivityRestoring>> * _Nullable))restorationHandler {
if ([userActivity.activityType isEqualToString:NSUserActivityTypeBrowsingWeb]) {
NSURL *url = userActivity.webpageURL;
NSString *str = [url absoluteString];
// TODO 根据需求进行处理
if ([str containsString:@"wxdxxxxxxxxxxxxx/oauth"]) {
return [WXApi handleOpenURL:url delegate:self];
}
if ([str containsString:@"wxdxxxxxxxxxxxxx/pay/"]) {
return [WXApi handleOpenURL:url delegate:self];
}
}
// TODO 根据需求进行处理
return YES;
}
8.检查通用链接是否有效
将UNIVERSAL_LINK在safari或者备忘录等原生app中打开,点开链接的效果应该是如下图效果:
检验的方法参考可微信文档