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:(NSDictionaryUIApplicationOpenURLOptionsKey, id> *)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
先说情况:分享到微信,显示正在连接,立即返回。
我的解决方案:下图,祝各位好运
我已经配置Universal Link 但是有时微信登录时无意会出现 “由于应用universal link 校验不通过,无法完成微信登录” ,关掉微信进程再点击应用的微信登录跳转的微信页面,微信授权登录成功了,这个问题是不是网络不好微信拉取associate文件失败,所以校验不通过?
微信分享出现这个问题,微信技术员能帮忙处理下吗
遇到同样的问题,不知道怎么解决,Universal Link一直校验不通过。但是QQ那边配置的就很顺利,不知道微信这边到底是神马问题,然后也没有客服联系。
内心是崩溃的,我想起当初在ClubHorse上开过一个房间,叫“我交小龙做产品”,希望可以把张小龙拉进去听一听。
加上这个代码试试
本人第五部完成后,没有执行第六步, 按照文章内所提到的,都已经添加了
-(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
属于回调问题
- (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;
}
跳到微信后再回跳App,流程就中止
Universal Link配置文件放在根目录还是必须放在.well-known目录下吗?
paths 直接配置为*不可以吗 ,必须前面要加路径吗?
你好,接入微信分享的SDK1.8.7.1,跳到微信后再回跳App,流程就中止
微信回调是通过Universal Link回调的,自检到步骤6后不再继续进行,错误日志
App更换bundleId,微信移动应用后台做了更新,并且associate文件也更新了,且都与最新的bundleId保持一致。登录也能成功,但是每次都要弹出二次确认框,请问这个是微信延迟吗?