我目前正在测试最新的iOS4功能,将我的位置感知应用程序置于后台。那么,它的确行得通!但另一方面,处理巨大的用电问题则相当棘手。最佳实践 - iPhone背景应用程序模式
在过去的四个小时里,该应用程序消耗了约50%的电池电量。它阅读了苹果公司关于这个主题的entire official documentation,但我仍然不确定我的应用程序的哪些部分仍在运行,哪些功能被暂停(除了UI图,应该清楚)。
我不使用任何真正的样板代码,但扩展库如ASIHTTPRequest与我的web服务交谈。用朋友的车测试你表明的网络连接和与位置服务时,我即使用
[locationManager startMonitoringSignificantLocationChanges];
Apples Documentation on不同的应用程序状态
背景仍在运行:应用程序在后台执行代码 [...]
我应该写一个“裸机”函数来接收和s结束这个位置数据?我应该在应用程序驻留在后台时删除所有其他对象以减少内存占用?似乎还没有任何最佳做法。
任何想法?也许你们可以向我提供一些你的见解。谢谢。
编辑: 有一个称为Energy Diagnostics Instruments新仪器与工具连接的设备记录任何电量(为iPhone 3GS及更高版本)。在设置应用程序 - >开发人员 - >电源使用情况下,设备上还有另一项服务。在现场测试你的用电量真是太好了。创建的日志可以稍后在乐器中拉出。
参考: WWDC 2010届309 - 高级性能分析工具