官網(wǎng):http://objectbox.io/
ObjectBox目前是Android上速度最快的數(shù)據(jù)庫(kù),有關(guān)ObjectBox和GreenDAO,Room,Real的對(duì)比在官網(wǎng)就有
gradle配置
- root project下面的gradle.build文件配置
// In your root build.gradle file:
buildscript {
ext.objectboxVersion = '1.3.3'
repositories {
jcenter()
maven { url "http://objectbox.net/beta-repo/" }
}
dependencies {
classpath 'com.android.tools.build:gradle:2.3.3'
classpath "io.objectbox:objectbox-gradle-plugin:$objectboxVersion"
}
}
allprojects {
repositories {
jcenter()
maven { url "http://objectbox.net/beta-repo/" }
}
}
- module下面的gradle.build文件配置
// In your (app) module build.gradle file:
apply plugin: 'com.android.application'
apply plugin: 'io.objectbox'
注意要將io.objectbox寫(xiě)到application下面,不止這個(gè)ObjectBox,只要是第三方都要寫(xiě)到application下面
在module的dependencies里配置
dependencies {
// 如果只是用java開(kāi)發(fā)
// compile "io.objectbox:objectbox-android:$objectboxVersion"
// apt
// annotationProcessor "io.objectbox:objectbox-processor:$objectboxVersion"
// 如果支持kotlin開(kāi)發(fā)
// objectbox-kotlin包含objectbox-android
compile "io.objectbox:objectbox-kotlin:$objectboxVersion"
// 當(dāng)使用Kotlin時(shí)使用kapt(kapt包含apt功能):
kapt "io.objectbox:objectbox-processor:$objectboxVersion"
}
這樣配置就完成了,然后在Application里初始化MyObjectBox
這里有個(gè)需要注意的地方
MyObjectBox這個(gè)類是編譯生成的,所以必須先定義一個(gè)數(shù)據(jù)表,然后執(zhí)行android studio的rebuild project,才會(huì)出現(xiàn)這個(gè)類,所以第一次使用的時(shí)候,先不要寫(xiě)MyObjectBox.builder().androidContext(this).build()
,先定義一個(gè)數(shù)據(jù)表,比如下面這樣
//java代碼
@Entity
class A {
@Id
public Long name = 0L;
}
或者
//kotlin代碼
@Entity data class B(@Id var age:Long = 0)
然后執(zhí)行rebuild project,這時(shí)候在build/generated/source/katp下面就生成了MyObjectBox類和你剛才定義的表,然后就可以在Application里去初始化了