我开发一个录音应用程序与服务器实时通信,因此需要持续的互联网连接。我在info.plist中包括UIRequiresPersistentWiFi刚才还禁用的设备进入睡眠时,应用程序被激活。然而,这种理解对设备的电池寿命产生严重影响。用户最终不得不离开这个在不断地插上。对于作为要取代手持录像机所吹捧的应用程序,这是一个严重的缺点。我的应用程序也有派从iPhone到服务器的许多XML线程,所以无线连接是至关重要的。

我的问题是: 1.是否有可能在会议期间仅在需要时以某种方式对UIRequiresPersistentWifi状态切换。例如,可以在此过程中仅传输或XML更新切换到服务器,并在其他时间关闭? 2.同样,可以IdleTimer启用并在会话期间随意编程禁用。例如,启用idletimer只有当没有前景或背景任务的设备上运行。

任何其他建议,以确保正常的电池寿命?我的所有用户都将在iTouch的4或iPhone 4。

任何帮助/建议将不胜感激。

有帮助吗?

解决方案

答到第2部分:是的,你可以启用和这取决于用户或应用程序正在做关闭空闲计时器,以及多久的经过。我知道,禁用空闲计时器一对夫妇的应用程序,但随后重新启用它,如果用户不触摸任何UI元素10分钟,但随后重新禁用它,如果用户再次启动一些长时间操作。等

偏答案第1部分:使用无线电(发送WiFi资料)开功率。一个好方法,以节省电力是不发送数据尽可能长时间。也许缓冲大量数据的设备上,并试图猝发上传后。

其他提示

我的建议是连续不与服务器通信,遗憾:(

是否有可能将数据缓存块到手机上的文件,在一个大的突发周期性地传送块到服务器?同为XML。或者,你的应用真的需要它来进行广播实时?

而且据我所知,如果指定UIRequiresPersistentWifi,你坚持了下来:(

对不起,可能不是你想要的答案!

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top