收藏
评论

Universal Link校验不通过/接入新SDK,跳到微信后再回跳App,流程就中止?官方

Q:Universal Link校验不通过,无法调起微信支付?

A:请开发者在调用register接口前,打开WXApi.h的日志接口,观察报错日志和原因:

+ (voidstartLogByLevel:(WXLogLevel)levellogBlock:(WXLogBolock)logBlock


Q:接入新SDK,跳到微信后再回跳App,流程就中止?

A:1. 首先,微信唤起App,App一定会收到系统回调。请确认系统回调是Scheme回调还是Universal Links回调。

2. 如果是Scheme回调,请检查是否走了UISceneDelegate(XCode11构建的项目),或是UIApplicationDelegate。它们的回调方法分别是


- (void)scene:(UIScene *)scene openURLContexts:(NSSetUIOpenURLContext *> *)URLContexts;

- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionaryUIApplicationOpenURLOptionsKeyid> *)options;


3. 如果是Universal Links回调,同样也检查是否走了UISceneDelegate(XCode11构建的项目),或是UIApplicationDelegate。它们的回调方法分别是

- (void)scene:(UIScene *)scene continueUserActivity:(NSUserActivity *)userActivity

- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void(^)(NSArrayidUIUserActivityRest
oring>> * __nullable restorableObjects))restorationHandler


4. 因为考虑兼容旧版本微信,因此无论Scheme或Universal Links回调都必须处理。 在重写回调方法后,需要分别调用WXApi的handleOpenUrl和handleOpenUniversalLink方法


示例:


- (voidscene:(UIScene *)scene continueUserActivity:(NSUserActivity *)userActivity {
        return [WXApi handleOpenUniversalLink:userActivity delegate:self


- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:void(^)(NSArrayidUIUserActivityRest
oring>> * __nullable restorableObjects))restorationHandler {
return [WXApi handleOpenUniversalLink:userActivity delegate:self];


https://developers.weixin.qq.com/doc/oplatform/Mobile_App/Access_Guide/iOS.html

107323浏览
最后一次编辑于  2020-01-14
知识库内容非实时更新,可能已过期、失效或不适用于当前情形,请谨慎参考
收藏
反馈

61 个评论

  • 庄守坤
    庄守坤
    2021-05-08

    先说情况:分享到微信,显示正在连接,立即返回。

    我的解决方案:下图,祝各位好运


    2021-05-08
    赞同
    回复
  • 王帅
    王帅
    2021-04-27

    我已经配置Universal Link 但是有时微信登录时无意会出现 “由于应用universal link 校验不通过,无法完成微信登录” ,关掉微信进程再点击应用的微信登录跳转的微信页面,微信授权登录成功了,这个问题是不是网络不好微信拉取associate文件失败,所以校验不通过?

    2021-04-27
    赞同
    回复
  • 蓝天之光
    蓝天之光
    2021-04-16

    微信分享出现这个问题,微信技术员能帮忙处理下吗

    2021-04-16
    赞同
    回复 1
    • ㅤ
      2023-03-03
      人都看不见  我也卡在这了   还没解决
      2023-03-03
      回复
  • DonVincent
    DonVincent
    2021-03-23

    遇到同样的问题,不知道怎么解决,Universal Link一直校验不通过。但是QQ那边配置的就很顺利,不知道微信这边到底是神马问题,然后也没有客服联系。

    内心是崩溃的,我想起当初在ClubHorse上开过一个房间,叫“我交小龙做产品”,希望可以把张小龙拉进去听一听。

    2021-03-23
    赞同
    回复
  • Bourne
    Bourne
    2021-02-02

    加上这个代码试试

    2021-02-02
    赞同
    回复
  • 笨笨哥
    笨笨哥
    2021-01-20

    本人第五部完成后,没有执行第六步, 按照文章内所提到的,都已经添加了

    -(BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString *,id> *)options
    {
        [WXApi handleOpenURL:url delegate:[BDPayManager shareManager]];
        return YES;
    }
    
    /**
     这个是超链接拦截处理
     */
    -(BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray<id<UIUserActivityRestoring>> * _Nullable))restorationHandler
    {
        [WXApi handleOpenUniversalLink:userActivity delegate:[BDPayManager shareManager]];
        return YES;
    }
    //微信注册 这个是在服务器后台添加的通配符形成的链接,两者必须保持一致
        [WXApi registerApp:WechatAppKey universalLink:@"https://procnd.haohaoxiuche.com/czbd/web/app/share/"];
    

    1、LSApplicationQueriesSchemes也添加了

    2、URL Types

    该添加的都已完成,真的是奇怪,但是有一个问题,我两个手机一样的代码,用下面这张方式居然一个成功一个显示bunldID校验不对

    希望官方能给我答复吧,着急等呢,appid 为; wxaff733268723d925


    2021-01-20
    赞同
    回复 1
    • 笨笨哥
      笨笨哥
      2021-01-20
      服务端超链接文件apple-app-site-association都已经配置好了, 并且可以通过Safari浏览器打开指定页面的时候显示通过app打开
      2021-01-20
      回复
  • Fenrir
    Fenrir
    2020-12-18

    属于回调问题

    - (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void(^)(NSArray<id<UIUserActivityRestoring>> * __nullable restorableObjects))restorationHandler{

        return [WXApi handleOpenUniversalLink:userActivity delegate:self];

    }

    如果该方法也可以用下面的方法

    // NOTE: 9.0以后使用新API接口

    - (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString*, id> *)options

    {

    if ([url.host isEqualToString:@"resendContextReqByScheme"]) {

            //调用分享sdk

            [WXApi handleOpenURL:url delegate:self];

        }

        

        return YES;

    }

    2020-12-18
    赞同
    回复
  • 鱼泪
    鱼泪
    2020-12-08

    跳到微信后再回跳App,流程就中止

    Universal Link配置文件放在根目录还是必须放在.well-known目录下吗?

    paths 直接配置为*不可以吗 ,必须前面要加路径吗?

    2020-12-08
    赞同
    回复
  • 你的名字
    你的名字
    2020-11-16

    你好,接入微信分享的SDK1.8.7.1,跳到微信后再回跳App,流程就中止

    微信回调是通过Universal Link回调的,自检到步骤6后不再继续进行,错误日志

    2020-11-16
    赞同
    回复
  • Triumphant
    Triumphant
    2020-11-03

    App更换bundleId,微信移动应用后台做了更新,并且associate文件也更新了,且都与最新的bundleId保持一致。登录也能成功,但是每次都要弹出二次确认框,请问这个是微信延迟吗?

    2020-11-03
    赞同
    回复

正在加载...

登录 后发表内容