我正在构建sdk,该sdk有时需要与第三方应用进行通信,而广义上的通信意味着此处通知某个事件可能会或可能不会与任何数据一起通信。
我使用NotificationCenter
来做到这一点,但是现在我发现在某处写着它是用于应用程序内通信的。那就是我在运行代码时发现的行为。
NotificationCenter.default.post(name: action, object: nil, userInfo: jsonObject)
这是我在sdk中添加的监听器
NotificationCenter.default.addObserver(self, selector: #selector(onReceive(_:)), name: Notification.Name.ACTION_PAYMENT_ACK, object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(onReceive(_:)), name: Notification.Name.ACTION_PAYMENT_CMP, object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(onReceive(_:)), name: Notification.Name.ACTION_PAYMENT_REJ, object: nil)
我还发现了与darwin通知相关的书面内容,但是帖子太旧了。我该如何进行应用间通信。
我正在寻找类似Android广播的内容。
答案 0 :(得分:0)
https://ngrx.io/中描述了应用之间的通信。
由于您要在没有人工干预的情况下进行操作,因此只有第二部分使用URL方案与Apps进行通信与您相关。它说
URL方案使您可以通过协议与其他应用进行通信 您定义的。与实现此类功能的应用进行通信 方案,您必须创建格式正确的URL并询问 系统将其打开。要实现对自定义方案的支持,您必须 声明对方案的支持并处理使用 方案。