Realm 在 React Native 中的使用

  1. 使用 Realm 需要有node-pre-gyprnpm命令的支持,所以首先查看电脑中有没有这两个命令;如果不存在,使用以下命令安装即可:
npm install node-pre-gyp -g
npm install rnpm -g
  1. 为项目安装 Realm ;
npm install --save realm
  1. 使用rnpm来把项目和realm原生模块库添加关联;
rnpm link realm

  1. 项目到此配置完成,但是针对 Android 还需要以下步骤才可以:
  • 在 MainApplication 中添加以下代码,
import io.realm.react.RealmReactPackage;
@Override
protected List getPackages() {    
  return Arrays.asList(            
    new MainReactPackage(),  // 注意:该对象不可以删除
    new RealmReactPackage() // 使用 Realm 时添加    
  );}
  • 检查 setting.gradle中是否包含以下内容,没有,则手动添加
include ':realm'
project(':realm').projectDir = new File(rootProject.projectDir, '../node_modules/realm/android')
  • 检查 build.gradle 中是否包含以下内容,没有,则手动添加
dependencies {    
  compile project(':realm')
}

Android 运行时有可能报以下错误

.../node_modules/realm/android/src/main/java/io/realm/react/RealmReactPackage.java:18: 错误: 方法不会覆盖或实现超类型的方法
     @Override
     ^

可进入到/node_modules/realm/android/src/main/java/io/realm/react/RealmReactPackage.java路径下,将createJSModules()方法上面的@Override注释掉即可

// @Override
public List> createJSModules() {
    return Collections.emptyList();
}

你可能感兴趣的:(Realm 在 React Native 中的使用)