Как создать / использовать энергонезависимую переменную на уровне фреймворка

Я не могу создать переменную на уровне платформы Android или на уровне приложения, которая сохранит свое значение даже после сброса настроек или изменения программного обеспечения. То же самое я могу реализовать в коде модема, основанного на qualcomm. В qualcomm мы можем добавить элементы NV.

Но я хочу это на уровне платформы Android или прикладного уровня.

Я работаю над версией 2.2.

2 ответа

Решение

Насколько я знаю, обычное стороннее приложение не может хранить данные, которые не могут быть удалены пользователем. Как внутренние, так и внешние хранилища могут быть очищены в любое время.

Внутреннее хранилище приложения будет очищено при сбросе настроек, когда приложение будет удалено или когда пользователь нажмет "Очистить данные" в операции "Управление приложениями".

Внешнее хранилище - это простая SD-карта, которая может быть отформатирована пользователем в любое время на любом другом устройстве (есть устройства, которые имеют встроенное внешнее хранилище, но его также можно отформатировать в настройках Android).

И нет никакого API для элементов NV (что разумно, я был бы удивлен, увидев, что это доступно сторонним разработчикам приложений).

Таким образом, вы не сможете хранить "энергонезависимую переменную" в Andrdoid. По крайней мере, без рута. И даже тогда вещи могут сильно отличаться от устройства к устройству.

Существует служба резервного копирования, которая может быть тем, что вы ищете - храните некоторые настройки приложения в облаке Google - http://developer.android.com/guide/topics/data/backup.html.

Другие вопросы по тегам