Я ищу для создания базы данных sqlite на SD-карте (не хочу использовать внутреннее хранилище пользователя). Я знаком с шаблоном OpenHelper:
public DatabaseFoo(Context context) {
OpenHelper openHelper = new OpenHelper(context);
mDb = openHelper.getWritableDatabase();
}
private static class OpenHelper extends SQLiteOpenHelper {
public OpenHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
...
поэтому, если мы хотим создать на SD-карте, я думаю, вместо этого мы должны использовать:
public static SQLiteDatabase openOrCreateDatabase (String path,
SQLiteDatabase.CursorFactory factory);
Но какой должен быть аргумент "factory", какой factory должен использоваться?
Также немного беспокоится о том, что произойдет, если пользователь удалит SD-карту, пока мое приложение будет использовать.
Спасибо