我应该使用哪种方法将数据发送到 Apple Watch 并返回?
Which method should I use to send data to Apple Watch and back?
我有一个类似于待办事项列表的应用程序。用户创建了他们希望在 iPhone 上完成的任务,并且每天都会在所需的时间提醒他们完成该任务。但是,我不确定哪种数据传输方法最适合我的应用程序。我希望 Apple Watch 至少能够查看和完成任务。当任务完成、添加或删除时,我还希望在 Watch 和 iPhone 上更新数据。
我应该使用:
updateApplicationContext
或 transferUserInfo
或 sendMessage
或任何其他方法?
updateApplicationContext
具有以下优点:
传输在后台进行,即使配对的应用程序未打开。数据被传输,为您的应用程序保留,然后在您打开您的应用程序时接收。
传输始终包含您的任务的最新状态。任何后来的传输都会替换任何较早传输的应用程序上下文数据。您不必处理多个用户信息数据、应用旧数据、逐个更改,这些数据可能会被队列中更靠后的新信息所取代。
其他方法的可能缺点
transferUserInfo
将排队并发送有关列表(或任务)的多个信息。虽然这在逐个任务的基础上可能很好,但您必须处理整个更改队列以使整个列表成为数据,重复您所做的任何工作以在配对设备上应用相同的更改。
sendMessage
需要两个可访问的应用程序之间的交互式通信,但您通常不会同时在两个设备上使用该应用程序。
我有一个类似于待办事项列表的应用程序。用户创建了他们希望在 iPhone 上完成的任务,并且每天都会在所需的时间提醒他们完成该任务。但是,我不确定哪种数据传输方法最适合我的应用程序。我希望 Apple Watch 至少能够查看和完成任务。当任务完成、添加或删除时,我还希望在 Watch 和 iPhone 上更新数据。
我应该使用:
updateApplicationContext
或 transferUserInfo
或 sendMessage
或任何其他方法?
updateApplicationContext
具有以下优点:
传输在后台进行,即使配对的应用程序未打开。数据被传输,为您的应用程序保留,然后在您打开您的应用程序时接收。
传输始终包含您的任务的最新状态。任何后来的传输都会替换任何较早传输的应用程序上下文数据。您不必处理多个用户信息数据、应用旧数据、逐个更改,这些数据可能会被队列中更靠后的新信息所取代。
其他方法的可能缺点
transferUserInfo
将排队并发送有关列表(或任务)的多个信息。虽然这在逐个任务的基础上可能很好,但您必须处理整个更改队列以使整个列表成为数据,重复您所做的任何工作以在配对设备上应用相同的更改。
sendMessage
需要两个可访问的应用程序之间的交互式通信,但您通常不会同时在两个设备上使用该应用程序。