天浔aa
天浔aa
  • 发布:2023-07-11 17:17
  • 更新:2023-07-11 17:31
  • 阅读:233

ios原生插件离线打包正常,打包成framework,callback为null

分类:插件市场

我编写了这个OC方法,用来获取支付宝授权结果;但是实际运行时发现 callback 在回调回来时已经是null了,所以保存了authCallback;但是只有在直接运行时有效,打包成framework,callback还是null值,怎么处理

@property (nonatomic, copy) UniModuleKeepAliveCallback authCallback;

  • (void)alipayAuthAsyncFunc:(NSDictionary )options callback:(UniModuleKeepAliveCallback)callback {
    self->_authCallback = [callback copy];
    [AFServiceCenter callService:AFServiceAuth withParams:params andCompletion:^(AFAuthServiceResponse
    response) {
    dispatch_async(dispatch_get_main_queue(), ^{
    NSLog(@"授权结果:%@", response.result);
    self->_authCallback(response.result,NO);
    });
    }];
    }
2023-07-11 17:17 负责人:无 分享
已邀请:
FullStack

FullStack - 【插件开发】【专治疑难杂症】【ios上架、马甲包、白包、过审、已成功上架过几百个】【多款插件已上架:https://ext.dcloud.net.cn/publisher?id=22130】【非诚勿扰】QQ:543610866

改为 看看

@property(nonatomic,retain)UniModuleKeepAliveCallback  callback;  

self.callback = callback;  

然后直接self.callback()
  • 天浔aa (作者)

    已解决,

    package.json文件中,加一hooksClass:"第三方类名"

    作用是:这个插件需要在 app 启动时做初始化或者获取系统事件用的

    2023-07-18 18:15

  • 1***@qq.com

    回复 天浔aa: 给你点赞,我也是只集成极简版的SDK,返回结果在Xcode运行好好的,然后在HX跑的时候就不行,原因应该是在Xcode跑uniPluginDemo的时候,而做支付宝SDK的时候有需要配置到AppDelegate.m中的,而这个文件是App初始化的东西,而我们的插件在打包xxx.frameworks的时候并不会把AppDelegate.m中的钩子打包进去,所以配置支付宝初始化的东西也就没有打包进去,需要添加一下hooksClass把App的运行钩子类添加一下

    2023-07-25 14:26

该问题目前已经被锁定, 无法添加新回复