首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
open-source libraries
Android童话镇
创建于2025-05-22
订阅专栏
The commonly used open-source frameworks in Android development
等 1 人订阅
共34篇文章
创建于2025-05-22
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
“魔法胶水”之BindingAdapter 的实现原理浅析
故事开场:一场“魔法胶水”的招聘大会 想象你是一位刚入职的 Android 小镇的“UI 魔法师”。 你的任务是把**数据(Model)和界面(View)**粘在一起,让它们像情侣一样同步更新。 但小
LiveData子线程订阅异常的故事:国王的信使与宫廷规则
故事背景 在Android王国里,有一个叫做LiveData的聪明信使系统。国王(主线程)制定了一条严格的宫廷规则: 故事开始 角色介绍 国王(MainThread) :王国的统治者,负责所有重要决策
为啥现在 Android App 不用手动搞 MultiDex 了?
一、小明的 “仓库危机”:MultiDex 的由来 咱们先从一个程序员小明的故事说起。 3 年前,小明刚接手一个购物 App,加了支付、地图、推送、统计等七八个第三方库后,编译时突然蹦出个报错:Con
Activity配置变化后ViewModel 的 “不死之谜”
要搞懂 ViewModel 的 “不死之谜”,我们先讲个《管家与主人的故事》,再扒代码、画时序图 —— 保证像看动画片一样明白! 一、先听个故事:ViewModel 是 “不会下岗的管家” 假设你(用
“记忆邮局” (LiveData)
咱们用一个有趣的“邮局送信”故事,来彻底讲透 LiveData 的数据倒灌问题及其解决方案!保证大家都能秒懂源码精髓。 故事背景:神奇的“记忆邮局” (LiveData) 想象你所在的小镇,有一个神奇
如何防范Livedata的Sticky事件副作用
从LiveData源码角度分析,数据倒灌问题源于其版本控制机制:LiveData的mVersion(初始值-1)在每次setValue/postValue后自增,而新观察者的ObserverW
用 "装修房子" 的故事看懂鸿洋大佬 AutoLayout 的原理
故事开场:小明的 "适配难题" 小明刚学 Android 开发时,遇到个头疼的问题:他按设计稿(720px 宽)写的布局,在自己的 720px 手机上好好的,到了同学的 1080px 手机上,所有按钮
🔍 MediaSession数据传输的"有效载荷"真相
🧩 核心结论 MediaSession传输的有效载荷没有固定值,它完全取决于Binder事务缓冲区大小(通常1MB),但实际可用空间远小于此!原因在于: 系统开销占用 每传输一个MediaItem对象
ExoPlayer影院奇幻之旅
让我们把ExoPlayer的复杂架构变成一个电影院奇幻之旅。请你坐稳扶好,灯光即将熄灭,我们的故事开始啦! 🎬 故事舞台:神奇的“ExoPlayer电影院” 🎭 想象你走进一家全自动化的未来电影院。你
📖 故事:神奇的“毕加索”画师王国 🎨
在 Android 大陆上,有一个神奇的 “毕加索王国” 。这个王国专门负责帮其他 App 城镇的居民(ImageView 视图居民)快速、优雅地获取远方的“魔法画像”(网络图片/本地图片)。 王国
🚀 JSBridge框架:Web小精灵与Native巨人的通话密道
想象一下:Web世界(H5页面)住着灵活的小精灵🧚♂️,Native世界(Android/iOS)住着强壮的巨人💪。他们需要合作,但被一道魔法屏障(运行环境隔离)隔开。JSBridge就是他们秘密通话
跨岛奇遇之JSBridge
下面我将化身“移动端魔法建造师”,用一场跨岛奇遇故事 + 代码实战,带你彻底掌握JSBridge的设计精髓。准备好,我们要出发了!🚀 🌉 第一章:孤岛之谜——为什么需要JSBridge? 剧情:Nat
🌉 JSBridge 框架全解析:Web 与 Native 的魔法翻译官
📖 故事背景:两个王国的贸易通道 想象在移动开发的大陆上,存在两个繁荣的王国: Web 王国:擅长快速建造「数字商店」(网页),但缺乏制造「魔法道具」(调用摄像头、支付等原生功能)的技术 Native
🚇 Android 导航大冒险:Navigation 组件的地铁系统指南
🗺️ 第一章:建造地铁系统 - 基础配置 1. 创建地铁总站(NavHost) 2. 绘制地铁线路图(NavGraph) 🚄 第二章:列车运行 - 导航操作 1. 启动列车(导航跳转) 2. 特快列车
🌐 Room 数据库奇遇记:从图书馆到 Android 开发的奇妙之旅
📚 故事背景:Room 图书馆的奇妙运作 想象一个名为 "Room" 的智能图书馆,这里藏着所有 Android 应用的数据宝藏。与传统图书馆(SQLiteOpenHelper)不同,Room 图书馆
Android中的“智能物流调度中心”WorkManager
作为Android系统里的“智能物流调度中心”,WorkManager 的核心使命是:把你的后台任务(包裹)在合适的时间、用最省电的方式(路线),可靠送达(执行),还能随时查物流(状态)。下面
APT(Annotation Processing Tool)框架原理解析
一、APT 基础概念 1. 什么是 APT? APT(Annotation Processing Tool)是 Java 编译器的一部分,用于在编译阶段处理注解 与运行时反射不同,APT 在编译时扫描
PAG 动画原理剖析(从文件格式到跨平台渲染)
一、PAG 核心架构与设计理念 PAG(Portable Animated Graphics)是腾讯推出的高性能动画解决方案,相比 Lottie 等方案,其核心优势在于: 二进制格式:相比 JSON
Lottie 动画原理剖析
一、核心架构与核心流程 Lottie 的核心是将设计师用 Adobe After Effects 制作的动画,通过 Bodymovin 插件导出为轻量级 JSON 文件,然后在移动端解析并渲染为流畅动
Retrofit 中动态代理设计的妙用
Retrofit 使用动态代理的核心优势在于通过 “接口 + 注解” 的方式将网络请求抽象化,让开发者用极简代码实现复杂功能。以下是动态代理在 Retrofit 中的具体好处,结合原理和案例通俗解析:
下一页