2013-09-23 10 views
1

Я хочу добавить возможность пользователям резервировать базу данных приложений и настройки на SD-карту. Затем должен быть в состоянии восстановить все данные на другом устройстве.Резервное копирование/восстановление базы данных приложений и настройка на Android

Как обычно эти задачи выполняются? Мне нужны рекомендации/образцы.

+0

Система резервного копирования Android должна помочь вам: http://developer.android.com/guide/topics/data/backup.html – Benoit

+0

Система резервного копирования Android хранит данные в облаке и только если пользователь включил эту опцию. Я хочу хранить все данные на SD. – barbarian

+0

Реализованный импорт/экспорт db на основе этого потока http://stackoverflow.com/questions/6540906/android-simple-export-and-import-of-sqlite-database/6542214#6542214 – barbarian

ответ

2

с базой данных Вы в основном есть два варианта.

  1. Предоставить пользователю возможность резервного копирования базы данных на SD-карту.
  2. создания/использует базу данных с SD карты

Case 2

Вы можете использовать getExternalFilesDir() для хранения данных приложения. Это создаст папку на SD-карте с вашим именем приложения.

Как пользоваться стандартом SQLLiteOpenHelper с пользовательским путем читать это link. Хороший ответ внизу. В качестве альтернативы вы можете напрямую открыть свою БД с SD-карты с помощью функции openDatabase. Эта функция просто потребовала путь к вашей базе данных.

Случай 1,

при копировании базы данных на карту памяти, которая в основном обычный копия файла и в этом случае сделать простой файл с одного пути на другой. getPath() из SQLiteDatabase предоставит вам путь к базе данных.

Общего Предпочтение с общими предпочтениями, которые поддерживают только ключевые ценности, и как получить доступ к общим предпочтениям с SD-карты читать эту link.

+0

I Реализован импорт/экспорт db на основе этот поток http://stackoverflow.com/questions/6540906/android-simple-export-and-import-of-sqlite-database/6542214#6542214 – barbarian

0

Что такое приложение все? Я бы решил эту проблему по-другому.

Вместо того, чтобы позволить пользователям перезагрузить свои настройки с сд карты, создать поддержку учетных записей пользователей и сервера, чтобы позволить пользователям синхронизировать свои профили на входе в систему.

Смежные вопросы