gpt4 book ai didi

ios - WatchConnectivity 发送消息 :replyHandler: don't work when linker have flag -ObjC

转载 作者:行者123 更新时间:2023-11-29 11:59:44 30 4
gpt4 key购买 nike

我有一些带有外部库的项目,该项目对这些库使用 -ObjC 链接器标志。没有 -ObjC 项目将崩溃。现在我想添加对 Watch OS 2 的支持。但我有问题:直到链接器有标志 -ObjC 方法 -sendMessage:replyHandler: 返回错误,如

Error Domain=WCErrorDomain Code=7014 "Payload could not be delivered." UserInfo={NSLocalizedDescription=Payload could not be delivered.}

我无法删除此标志 (-ObjC),但有了它我的 watch 就无法正常工作。如果用户点击按钮,我需要向我的 iPhone 发送一些信息。通过另一种方式发送信息,我也遇到了问题。系统将消息添加到队列中并永久保存。有人有想法吗?

最佳答案

链接器标志不应影响 WatchKit 连接。以下是几个故障排除过程。

  1. 您必须确保在接收消息的设备上实现委托(delegate)方法。

-(void)session:(WCSession *)session didReceiveMessage:(NSDictionary<NSString *,id> *)message

  1. 在您的评论中,您说您发送的数据是一个简单的字典。 WatchKit 连接不允许您发送自定义类对象。

  2. 同时尝试重新启动您的模拟器或设备。特别是对于模拟器,Watchkit 连接经常失败。重建并重新启动会有所帮助。

这些是人们(或我)在 Wathkit 连接方面常犯的错误。任何代码都不应阻止 Watchkit 连接。请仔细阅读 Apple 的文档,了解有关委托(delegate)和协议(protocol)的细节。如果您有任何问题,请告诉我。祝你好运!

关于ios - WatchConnectivity 发送消息 :replyHandler: don't work when linker have flag -ObjC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37500753/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com