Giải pháp của tôi là sử dụng trực tiếp lớp ReactDatabaseSupplier
(ứng dụng của tôi không sử dụng Rocksdb
để tôi có thể chắc chắn rằng DB SQLite luôn được sử dụng làm bộ nhớ (và, tôi đoán nó sẽ luôn thích cơ sở dữ liệu SQLite hơn cục bộ lưu trữ))
Cơ sở dữ liệu là một DB giá trị khóa đơn giản (hai cột, key
và value
), với một tên bảng 'catalystLocalStorage' (bạn có thể thử để đọc ReactDatabaseSupplier#TABLE_NAME
nhưng nó được bảo vệ, bạn có thể thử sử dụng phản chiếu, nhưng tôi không chắc chắn nó có giá trị khó khăn)
Cursor catalystLocalStorage = null;
SQLiteDatabase readableDatabase = null;
try {
readableDatabase = ReactDatabaseSupplier.getInstance(this.getApplicationContext()).getReadableDatabase();
catalystLocalStorage = readableDatabase.query("catalystLocalStorage", new String[]{"value"}, "key = ?", new String[] { "keyName" }, null, null, null);
final String value = catalystLocalStorage.getString(catalystLocalStorage.getColumnIndex("value"));
[...]
} finally {
if (catalystLocalStorage != null) {
catalystLocalStorage.close();
}
if (readableDatabase != null) {
readableDatabase.close();
}
}
Nó hoạt động với tôi, không chắc chắn làm thế nào trong tương lai-bằng chứng nó có thể là
Nguồn
2017-03-06 16:57:11
Tôi đang sử dụng '' 'redux-persist''', bạn có biết làm cách nào để biết tên' '' myTableName''' – Pablo