美文网首页
iOS微信分享,提示“未验证应用”的解决办法,配置 Univer

iOS微信分享,提示“未验证应用”的解决办法,配置 Univer

作者: xymspace | 来源:发表于2020-06-03 10:54 被阅读0次

    官方文档

    配置 Universal Link

    • 创建一个json文件,格式固定,无需更改。
    
    {
    
        "applinks": {
    
            "apps": [],
    
            "details": [{
    
                "appID": "teamID.bundleID",
    
                "paths": ["*"]
    
                }
    
            ]
    
        }
    
    }
    
    

    配置文件中的details数据, 其中的appID对应的value为teamID 和 bundleID。配置时用“.”拼接,如上述代码teamID在前,bundleID在后。上述两个ID,可以在苹果的开发者网站内找到,顺便将Associated Domains选中。

    teamID
    • 编辑完成后,导出文件,并命名为 apple-app-site-association。若有扩展名,必需隐藏扩展名(官方文档有规定)。
    • 生成此文件,将它放入App所用域名的根目录下。

    配置项目

    1. xcode打开工程,上面的操作我们已经开启了Associated Domains,这里直接配置就行了。

    applinks:+ App的域名,例如:applinks:apple.com

    1. 在AppDelegate中,添加如下方法:
    • swift
    func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool {
    
            return WXApi.handleOpenUniversalLink(userActivity, delegate: self)
    
    }
    
    • oc
    - (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray * _Nullable))restorationHandler
    {
        if ([userActivity.activityType isEqualToString:NSUserActivityTypeBrowsingWeb]) {
            NSURL *webpageURL = userActivity.webpageURL;
            NSString *host = webpageURL.host;
            if ([host isEqualToString:@"apple..com"]) {
                //进行我们需要的处理
                [WXApi handleOpenUniversalLink:userActivity delegate:self];
            }
            else {
                [[UIApplication sharedApplication]openURL:webpageURL];
            }
        }
        return  YES;
    }
    

    另外,微信的分享接口也已发生了细微变化,增加了分享完成的回调

    [WXApi sendReq:req];   // 弃用
    [WXApi sendReq:req completion:^(BOOL success) {
            
        }];  // 带回调的新接口
    

    检测是否配置成功

    1. 将App删除后,重新编译,安装到手机。

    2. 打开Safari,输入App所使用的域名,在网页界面下拉一下

    3. 如发现界面顶部有App的入口,点击后,可跳转到App,则表示配置成功。

    配置微信开发平台信息

    需将App域名添加到微信开放平台的信息中,如: https://apple.com/



    注意:

    1. 此处域名必须支持https

    2. 首次发起分享时,会出现二次跳转的行为,具体流程:App拉起微信 - 出现“正在连接”界面 - 返回App - 重新打开微信。这是新的验证流程,每个用户首次使用时都会出现上述跳转。(如同一用户多次使用分享均出现跳转,请检查Universal Links配置 )

    3. 使用pod集成weixinSDK,如果无法获取到1.8.6以上版本,请在官网手动下载,手动替换工程pods中的weixinSDK静态库,头文件,重新编译。

    4. 配置完成,可以成功分享,依然看到“未验证应用”:未验证应用名单非实时更新,前一天有接入新SDK(1.8.6版本以上)并且有正确调用记录第二天才会移除出名单。官方的问题排查文档

    5. 特别强调:第一,可以成功访问到你放在公司域名下的apple-app-site-association文件;第二,在工程里配置applink的环境变量时,注意要把debug和release两个版本都配置上。如果你是发的release版本而没配置,就会提示未验证应用,且可能无法从微信返回app;第三,检查微信后台有没有写对。

    相关文章

      网友评论

          本文标题:iOS微信分享,提示“未验证应用”的解决办法,配置 Univer

          本文链接:https://www.haomeiwen.com/subject/naevzhtx.html