Вы можете создать базу данных на SDCard, если используете что-то вроде
public class DatabaseHelper extends OrmLiteSqliteOpenHelper {
[...]
public DatabaseHelper(final Context context) {
super(context, Environment.getExternalStorageDirectory().getAbsolutePath()
+ File.separator + DATABASE_NAME, null, DATABASE_VERSION);
}
. Это создает файл базы данных, например, в /mnt/sdcard/Android/data/com.your.app/files/myData.sqlite Pro: экономит внутреннюю память Con: DB недоступна, когда SDCard недоступна (например, когда она подключена к ПК). Кроме того, ее может прочитать любой, кто может быть за или против.
При использовании context.getExternalFilesDir () вместо Environment.getExternalStorageDirectory () будет использоваться местоположение, специфичное для вашего приложения, которое будет автоматически очищаться после удаления (и оно появляется в 2.2 также при обновлении приложения).
PS Я где-то читал, что этот подход может не работать на версиях Android до 2.2 (?)