V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
fancymf
V2EX  ›  程序员

吐槽下腾讯云即时通信离线推送(iOS)

  •  
  •   fancymf · 2023-08-04 11:45:59 +08:00 · 1051 次点击
    这是一个创建于 479 天前的主题,其中的信息可能已经有所发展或是发生改变。
    集成了最新的离线即时推送 sdk ,然后发现判断刘海屏的判断错了。原来 sdk 内把 系统 appDelegate 给替换了。晕。想去开发集成群问问官方人员怎么办,他们大概率不知道这个替换了,说只是 hook 了代理方法,没替换。后面私信来问我了,我把相应代码贴了,还在口硬,说你看下就知道了,自己看下代码就知道了。我也知道我看代码知道,但我都没时间啊,赶着上线才用你们集成聊天功能啊天。早上的时间都浪费了,心情也糟了。
    2 条回复    2023-08-07 20:08:00 +08:00
    elechi
        1
    elechi  
       2023-08-04 14:10:40 +08:00
    技术人员都嘴硬
    liyoujia1988
        2
    liyoujia1988  
       2023-08-07 20:08:00 +08:00
    您好,关于您反馈的问题,解答如下:

    TUIOfflinePush 开源组件,是为了方便离线推送的接入而开发的。

    为了获取到比较丰富的系统回调,TUIOfflinePush 会接管 APP 层自有的 AppDelegate ,并将 UIApplication 的 delegate 替换成自己,也即 TUIOfflinePush 会在中间做透明转发,让 APP 上层无感知。

    因为以下几个方面的原因,TUIOfflinePush 还暂时不支持 swift 的接入,接下来会陆续在 swift 上做友好支持。
    1 )这里利用了比较多的动态特性,上层业务在使用 UIApplication.shared.delegate 的时候,无法直接 as AppDelegate ,从而会影响 swift 环境下 AppDelegate 的获取
    2) 为了方便配置证书 ID ,提供了比较多的宏定义,这里 swift 暂时还不支持

    目前由于 APNs 离线推送本身的集成并不困难,swift 的集成可以参考 TUIOfflinePushManager+APNS 文件,自己申请 token 和 上报 token 。

    另外,TUIOfflinePush 内部监听了 TUICore 组件中的 TUILogin 登录事件,初衷是简化集成。这也是为什么 TUIOfflinePush 仅仅 pod 进工程而不调用就接管系统回调的原因。

    如果您是 swift 环境,直接在 podfile 中移除掉 TUIOfflinePush 即可。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3242 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 13:05 · PVG 21:05 · LAX 05:05 · JFK 08:05
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.