Я написал приложение iOS, которое взаимодействует с устройствами BLE - устройство BLE отправляет данные устройства iOS, а приложение анализирует данные и затем сохраняет их. Приложение iOS получает данные каждую секунду, поэтому массив, в котором я сохраняю свои показания (как NSString
), становится очень быстрым.Лучший способ сохранить большой массив на iOS
Приложение разрешено работать в фоновом режиме, и до этого момента я использовал NSUserDefaults
для сохранения этого большого массива. Я сделал след в своем приложении и увидел, что он использует 3% процессора iPhone 6 в фоновом режиме и выяснил, что NSUserDefaults вызывал это. Я прочитал об этом и увидел, что для этой цели неэффективен NSUserDefaults
.
Теперь я хотел бы перейти от этого метода и использовать что-то другое. Я прочитал несколько таких методов, как сохранение данных в CoreData, в Plists или просто в текстовом файле. Насколько эффективны и легко внедряются такие методы? Я делал что-то с текстовым файлом раньше, что было очень просто, но довольно часто мне нужно взять все содержимое этого текстового файла и загрузить его в массив для синтаксического анализа, который, похоже, будет проблематичным для памяти. Итак, если у вас есть предложения, я бы с удовольствием их услышал.
Я проверю это, спасибо. –
Спасибо, это работает очень хорошо. В фоновом режиме загрузка процессора составляет менее 1%. CoreBluetooth теперь использует большую мощность процессора –