使用 watchOS 2,我可以多快在 iPhone 和 Apple Watch 之间发送 UIImage?
How fast can I send a UIImage between an iPhone and Apple Watch, with watchOS 2?
我正在构建一个 Apple WatchOS 2 应用程序,它使用生成的图像连续动画。
因为这些不能与应用程序捆绑,所以它们在 InterfaceController 中生成,然后设置为显示在手表上,如下所示:
self.imageGroup?.setBackgroundImage(self.image)
到目前为止,我一直以每秒 1 张图像的速率生成这些图像,这感觉相当安全,但显然提供了 1fps 的非常低的帧速率。现在我想知道这可以改进多少?
我测量了 UIImages 本身的生成速度,这是相当低的 0.017 秒。这些图像的大小相当一致,也都在 10000 字节左右。如果没有进一步的延迟,那将给我一个更可接受的大约 58fps 的性能。
我的问题是 - 是否存在蓝牙与我的 phone 通信的典型速度,我可以将其与该图像大小进行比较以确定实际的帧速率?
或者 - 我假设在发生这种情况时调用 setBackgroundImage
不会阻塞主线程。有什么方法可以让我知道实际设置需要多长时间?
Apple 没有记录此速度,因为它在很大程度上取决于连接强度。而且由于用户不需要手表和 phone 紧挨着,所以用户距离越远(或 phone 和手表之间的对象类型)速度越慢转移.
你的图像是 10 KB,你想每秒发送 58 张图像,所以每秒 580 KB 或 .58 MB?数据量听起来并非不切实际(尽管这会耗尽电池电量)。但是,两个设备之间的每次网络调用都会产生一些开销。这些图像需要实时发送吗?否则,如果您最初可以延迟 1-2 秒,然后将一组 58 张图像一起批处理,您可以将它们在手表上制作动画,那么您可能会获得更好的性能。您每秒只会有 1 个网络调用,这对于设备来说比每秒 58 个调用更易于管理。
我正在构建一个 Apple WatchOS 2 应用程序,它使用生成的图像连续动画。
因为这些不能与应用程序捆绑,所以它们在 InterfaceController 中生成,然后设置为显示在手表上,如下所示:
self.imageGroup?.setBackgroundImage(self.image)
到目前为止,我一直以每秒 1 张图像的速率生成这些图像,这感觉相当安全,但显然提供了 1fps 的非常低的帧速率。现在我想知道这可以改进多少?
我测量了 UIImages 本身的生成速度,这是相当低的 0.017 秒。这些图像的大小相当一致,也都在 10000 字节左右。如果没有进一步的延迟,那将给我一个更可接受的大约 58fps 的性能。
我的问题是 - 是否存在蓝牙与我的 phone 通信的典型速度,我可以将其与该图像大小进行比较以确定实际的帧速率?
或者 - 我假设在发生这种情况时调用 setBackgroundImage
不会阻塞主线程。有什么方法可以让我知道实际设置需要多长时间?
Apple 没有记录此速度,因为它在很大程度上取决于连接强度。而且由于用户不需要手表和 phone 紧挨着,所以用户距离越远(或 phone 和手表之间的对象类型)速度越慢转移.
你的图像是 10 KB,你想每秒发送 58 张图像,所以每秒 580 KB 或 .58 MB?数据量听起来并非不切实际(尽管这会耗尽电池电量)。但是,两个设备之间的每次网络调用都会产生一些开销。这些图像需要实时发送吗?否则,如果您最初可以延迟 1-2 秒,然后将一组 58 张图像一起批处理,您可以将它们在手表上制作动画,那么您可能会获得更好的性能。您每秒只会有 1 个网络调用,这对于设备来说比每秒 58 个调用更易于管理。