Android Studio gradle-8.4 配置 GreenDao

1.配置项目下的build

复制代码
buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath ("org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.0")
        classpath ("org.greenrobot:greendao-gradle-plugin:3.3.1") // 使用最新版本
    }
}

2.配置app下的build

复制代码
id("org.jetbrains.kotlin.kapt")
id("org.greenrobot.greendao")
复制代码
kapt {
    arguments {
        arg("daoPackage", "你的ApplicatinId")
        arg("databaseName", "你的数据库名称-db")
        arg("targetGenDir", "/src/main/java")
        arg("schemaVersion", "1")
    }
}
复制代码
implementation("org.greenrobot:greendao:3.2.2")
kapt("org.greenrobot:greendao-generator:3.2.2")

3.初始化数据库

复制代码
class App : Application() {

    private var myOpenHelper: MyOpenHelper? = null
    private var db: SQLiteDatabase? = null
    private var mDaoMaster: DaoMaster? = null
    private var mDaoSession: DaoSession? = null

    override fun onCreate() {
        super.onCreate()
        setDatabase()
    }

    private fun setDatabase() {
        myOpenHelper = MyOpenHelper(this, "你的数据库名称-db", null)
        db = myOpenHelper!!.writableDatabase
        mDaoMaster = DaoMaster(db)
        mDaoSession = mDaoMaster!!.newSession()
    }

    fun getmDaoSession(): DaoSession? {
        mDaoSession = mDaoMaster!!.newSession()
        return mDaoSession
    }

    inner class MyOpenHelper(context: Context?, name: String?, factory: CursorFactory?) :
        DaoMaster.OpenHelper(context, name, factory)

}

4.实体类

复制代码
@Entity
public class TypeEntity {

    @Id(autoincrement = true)
    private Long id;
    private int color;
    private String type;
}

5.实例类写好之后锤子🔨锤一下就自动生成后续代码了 【快捷键忘了,如果有记得的同学,欢迎留言Thanks♪(・ω・)ノ 】。

相关推荐
Android打工仔3 小时前
Kotlin 协程源码解析:DispatchedContinuation 里的 Dispatcher 从哪里来?
android·kotlin
打工仔折腾 AI3 小时前
从BPE到SentencePiece:Transformer分词原理与Python实战对比
android·人工智能·python·深度学习·langchain·transformer·ai agent 实战
Dovis(誓平步青云)4 小时前
几个方案来回选不定?做一个随时切换的候选推荐页
android·java·服务器·开发语言·javascript·数据库·智能化
恋猫de小郭8 小时前
KMP 又改了编译流程, Separate Compilation 禁止了 `commonMain` 的依赖穿透
android·前端·flutter
执明wa8 小时前
Android RecyclerView 实战:点击频道栏切换对应内容
android·开发语言·windows·microsoft·android studio
新鲜势力呀8 小时前
PHP 定时数据同步实战:从第三方接口超时到异步同步 + 增量更新架构优化全过程
android
星间都市山脉10 小时前
RecoveryUI 圆角屏安全边距配置及代码调用链
android·java·linux·windows·ubuntu
打工仔折腾 AI10 小时前
DiPlay 实测:iPhone 绕过硬件盒子直连 BYD 车机的思路拆解
android·人工智能·后端·python·gradle·iphone·ai agent 实战
hengdonghui11 小时前
Writeup 4 NUAA 2017 robots
android·ctf·re