gpt4 book ai didi

ios - 如何在 iOS 应用程序和 macOS 应用程序之间共享数据?

转载 作者:行者123 更新时间:2023-11-28 23:57:55 25 4
gpt4 key购买 nike

我有一个使用 MusicKit API 播放音乐的 iOS 应用程序。我想为 macOS 编写一个与 iOS 应用程序通信的配套应用程序。

例如,我的 iPhone 正在播放音乐。当新轨道开始播放时,macOS 应用程序中会出现一条通知。我可以在 macOS 上单击一个按钮以跳到手机上的下一首轨道。

像这样在设备之间进行通信的最佳方式是什么?

我认为有两个重要的用例:

  1. 用于帐户详细信息和偏好等静态数据。
  2. 用于实时消息。

我可以通过远程服务器做所有事情,但我想知道是否有更好的方法。

最佳答案

用户需要在 iOS 和 macOS 上安装您的应用,并且需要单独授予接收推送通知的权限。

请记住,Apple 不保证实时传送或传送所有远程推送通知。如果在短时间内发送了很多远程推送通知,APNS 也可能会丢弃这些通知。不建议将 APNS 用于用户启动的操作,例如音乐轨道控制,因为用户期望(立即)结果。应改用服务器与其客户端之间的网络套接字或其他永久连接。

在一台设备上播放音乐,在另一台设备上停止:

  1. 请求发送远程推送通知的权限,以获取每台设备的唯一 APNS token 。
  2. 将设备 token 存储在您的服务器上。
  3. 让 iOS 客户端通知服务器用户开始播放音乐。
  4. 使服务器通过 APNS 向 macOS 客户端发送远程推送通知。
  5. 在 macOS 客户端上处理用户与推送通知的交互并将用户操作报告回服务器。
  6. 让服务器通过网络套接字连接通知 iOS 用户交互,而不是远程推送通知,以确保客户端处理用户操作。
  7. 让 iOS 客户端跳过轨道。

同步用户偏好:

  1. 在服务器上存储每次更改的首选项。
  2. 在每次应用程序启动时向服务器请求偏好设置,或者在偏好设置发生变化时通过服务器远程推送通知或网络套接字连接触发请求来动态请求偏好设置,具体取决于同步的实时性。

关于ios - 如何在 iOS 应用程序和 macOS 应用程序之间共享数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50591545/

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