我編寫了一個與BLE設備接口的iOS應用程序 - BLE設備發送iOS設備數據,然後應用程序分析數據並保存。 iOS應用程序每秒接收一次數據,因此我保存讀數的陣列(如NSString
)變得非常快。在iOS上保存大型數組的最佳方法
該應用的在後臺工作,直到這一點我一直在使用NSUserDefaults
保存這個大陣。我在我的應用程序上做了一個跟蹤,發現它在背景中使用了iPhone 6的CPU的3%,並發現NSUserDefaults正在造成這種情況。我讀了它,看到NSUserDefaults
是如何效率低下的。
現在,我想從這種方法轉換,並使用不同的東西。我已經閱讀了一些這樣的方法,比如將數據保存到CoreData,Plists或純文本文件中。這種方法有多高效和易於實現?我之前使用過一個文本文件做了一些事情,這很容易,但是我經常需要將該文本文件的全部內容加載到數組中進行分析,這似乎是內存問題。所以,如果你有任何建議,我很樂意聽到他們。
我檢查了這一點,謝謝。 –
謝謝,這工作得很好。後臺CPU使用率降至<1%。 CoreBluetooth現在使用最多的CPU功率 –