- 使用 Realm 需要有
node-pre-gyp
和rnpm
命令的支持千绪,所以首先查看電腦中有沒有這兩個命令蝴光;如果不存在儡炼,使用以下命令安裝即可:
npm install node-pre-gyp -g
npm install rnpm -g
- 為項目安裝 Realm 芒帕;
npm install --save realm
- 使用rnpm來把項目和realm原生模塊庫添加關(guān)聯(lián);
rnpm link realm
- 項目到此配置完成瞬捕,但是針對 Android 還需要以下步驟才可以:
- 在 MainApplication 中添加以下代碼鞍历,
import io.realm.react.RealmReactPackage;
@Override
protected List<ReactPackage> getPackages() {
return Arrays.<ReactPackage>asList(
new MainReactPackage(), // 注意:該對象不可以刪除
new RealmReactPackage() // 使用 Realm 時添加
);}
- 檢查 setting.gradle中是否包含以下內(nèi)容,沒有肪虎,則手動添加
include ':realm'
project(':realm').projectDir = new File(rootProject.projectDir, '../node_modules/realm/android')
- 檢查 build.gradle 中是否包含以下內(nèi)容劣砍,沒有,則手動添加
dependencies {
compile project(':realm')
}
Android 運行時有可能報以下錯誤
.../node_modules/realm/android/src/main/java/io/realm/react/RealmReactPackage.java:18: 錯誤: 方法不會覆蓋或?qū)崿F(xiàn)超類型的方法
@Override
^
可進入到/node_modules/realm/android/src/main/java/io/realm/react/RealmReactPackage.java
路徑下扇救,將createJSModules()
方法上面的@Override
注釋掉即可
// @Override
public List<Class<? extends JavaScriptModule>> createJSModules() {
return Collections.emptyList();
}