码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 12.从架构设计角度分析AAC源码-Room源码解析第1篇:当前demo为主线查看涉及的Room源码解析


    前言

    下面的解析也是总体到细节去一步步剥离当前demo为主线涉及的Room源码部分。

    demo

    demo路径在AAC-core-demo下(下载当前github上的源码是记得是Room tag标签)。

    我们应该运行一下当前demo,知道它是干什么的

    在这里插入图片描述

    1. 在输入框输入随意信息,e.g. 啦啦啦;

    2. 点击按钮 UPDATE USERENAME,当前输入框会更新如图所示的输入框上方;

    3. 关闭当前app,再次打开上次输入的信息(e.g.啦啦啦)被保留并展示在如图所示的输入框上方。

    出现这种情况的原因:我们使用了androidx源码中的room组件。通过room操作supportSqlite,supportSqlite再去操作android源码中的sqlite组件。

    • 知道是Room插件即可,这里的supportSqlite就是androidx源码中sqlite组件的具体实现几个类,前缀都是supportSQLite。

    总体到细节

    下面开始一步步深入细节的去理解当前Room源码。

    在这里插入图片描述

    1. app模块:demo模块,使用Room;

    2. room模块:设计到的子模块不只是上面的两个,room-runtime和room-compiler,我们暂主要理解这两个即可;

    • (1) room-runtime:被demo引用的依赖,通过当前模块去操作数据库,相当于把数据库的操作分为两部分:一部分自己处理,一部分交给androidx中sqlite模块去处理;

    • (2) room-compiler:用于根据demo中的注解,为demo生成类(这里不做研究,后面会有专门的文章去分析,以及room注解的用法);

  • 相关阅读:
    用户体验 | 如何度量用户体验?
    WebRTC学习笔记五 SDP(Session Description Protocol)
    java计算机毕业设计ssm的会议管理系统(源码+系统+mysql数据库+Lw文档)
    吴恩达机器学习week2实验答案Practice Lab Linear Regression【C1_W2_Linear_Regression】
    22. 【Linux教程】Linux 结束进程
    Abp 项目报错 Microsoft.Data.SqlClient.SqlException (0x80131904)
    [要素察觉]C语言五讲:指针
    免费享受企业级安全:雷池社区版WAF,高效专业的Web安全的方案
    【实用小功能10】python运行加速神器——numba(详细教学版)
    微擎模块 健身房小程序2.4.0 多用户版 微信官方获取用户信息接口调整, 做对应调整
  • 原文地址:https://blog.csdn.net/foshengtang/article/details/126865392
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号