我有一个Mac应用程序和iOS应用程序。我需要在iOS上显示来自Mac应用程序的通知。
有没有比使用推送通知或网络套接字(UDP或TCP)更简单的方法?也许Apple提供了一种方式?
我需要确保用户听到此通知。应用程序应在后台启动并开始播放声音。
答案 0 :(得分:3)
如果他们在同一个网络上,您可以使用bonjour(https://developer.apple.com/bonjour/index.html)进行mac app和iOS app之间的通信。
如果他们在不同的网络上你必须使用服务器,服务器将通过tcp连接到mac app和iOS app,你可以通过服务器发送msgs。如果iOS设备被锁定或应用程序处于后台,则必须实施推送通知才能将数据发送到iOS应用程序。
答案 1 :(得分:1)
不确定您的使用案例,但使用Apple的推送通知为您的应用提供通知似乎是一个合适的选择。同样,不确定您的用例,但另一种方法是使用Twilio API发送短信。
答案 2 :(得分:1)
还有另一个选项称为BLE。使用BLE,你可以使用核心蓝牙框架在mac和iOS之间进行交互。
当您使用此框架收到从mac到iOS的任何消息时,您可以显示本地通知并可以唤醒应用程序,因为BLE在后台模式下也能正常工作。
对于mac充当外围设备,在here上有一个很好的开源项目。
您可以找到有关BLE here的更多信息。
希望这有帮助。
答案 3 :(得分:0)
我认为唯一可接受的解决方案是通过APNS将推送通知从mac发送到iOS设备,因为iOS上的应用生命周期限制。实现APNS没有什么困难,有很多现成的实现,比如NWPusher - 你可以将它复制到你的项目并设置环境 - 密钥,设备令牌 - 你已经完成了。要将令牌从iOS传输到您的mac应用程序,您可以使用多种方式。例如,在mac上实现简单的Web服务,并通过http / https发送令牌。
您也可以使用现成的服务器端实现(如parse.com)发送推送通知。