- 博客(242)
- 收藏
- 关注
原创 Android Hilt:依赖注入解耦与 Hilt MVVM 解耦思路
Android Hilt:依赖注入解耦与 Hilt MVVM 解耦思路、@HiltAndroidApp、@AndroidEntryPoint、@Inject、@Binds、@Provides、Qualifier、@InstallIn、@HiltViewModel
2026-08-24 08:16:17
45
原创 Android 性能优化:Activity 泄漏来源、static 使用、AsyncTask/Thread/Handler、监听器未移除,以及动画、IO、Cursor、Bitmap 和集合等资源释放
Android 性能优化:Activity 泄漏来源、static 使用、AsyncTask/Thread/Handler、监听器未移除,以及动画、IO、Cursor、Bitmap 和集合等资源释放
2026-08-17 11:14:58
359
原创 Jetpack Compose 基础:Composable 函数、常用控件与 Column、Row、Box 布局
setContent、@Composable、Button、Text、TextField、Image、CircularProgressIndicator、LinearProgressIndicator、Column、Row、Box
2026-08-14 16:15:25
212
原创 Kotlin Flow 生命周期管理 launch、launchWhenStarted、repeatOnLifecycle,StateFlow 粘性状态共享与 SharedFlow 非粘性事件分发
Kotlin Flow 生命周期管理 launch、launchWhenStarted、repeatOnLifecycle,StateFlow 粘性状态共享与 SharedFlow 非粘性事件分发
2026-08-13 18:04:41
393
原创 Kotlin Flow 多流组合 flatMapConcat 、flatMapMerge、flatMapLatest 、zip、与背压处理 buffer、conflate 顺序、并发、取消、缓存、丢弃
Kotlin Flow 多流组合 flatMapConcat 、flatMapMerge、flatMapLatest 、zip、与背压处理 buffer、conflate 顺序、并发、取消、缓存、丢弃
2026-08-13 10:51:17
201
原创 Kotlin Flow 常用操作符:数据变换 map、filter、onEach,时间控制 debounce、sample,终端聚合 reduce、fold
Kotlin Flow 常用操作符:数据变换 map、filter、onEach,时间控制 debounce、sample,终端聚合 reduce、fold
2026-08-13 10:22:49
340
原创 Kotlin Flow:冷流收集、并行订阅、emit 推送、delay 延迟、collect 全量收集与 collectLatest 的实时数据处理
Kotlin Flow:冷流收集、并行订阅、emit 推送、delay 延迟、collect 全量收集与 collectLatest 的实时数据处理
2026-08-12 11:07:41
301
原创 Android 短视频详情页实战进阶:从简介渲染、点赞收藏、评论联动到共享 ViewModel 与 Media3 视频播放的完整实现
Android 短视频详情页开发实战进阶:基于 MVVM、DataBinding、Shared ViewModel、SmartRefreshLayout 与 Media3 完成视频简介渲染、点赞收藏联动、评论发布删除与分页加载、登录态回刷、单一数据源管理及详情页播放器复用的完整实现
2026-04-19 02:27:22
1354
原创 Android 短视频播放详情页实战:从播放器模块拆分、Media3 与 FlowHelper 接入,到 ViewPager 高度适配和详情数据联动
Android 短视频播放详情页实战:从播放器模块拆分、Media3 播放器接入、详情页主布局与 ViewPager 分页容器搭建,到简介页/评论页/推荐列表联动、FlowHelper 布局组织、自适应高度修正、详情接口请求分发与 OkHttp 调试链路完整落地
2026-04-16 19:47:47
880
原创 Android 短视频项目实战:从登录态回流、设置页动作分发到缓存清理、协议页复用与密码重置的完整实现个人中心与设置模块
Android 短视频项目实战:基于 MVVM、DataBinding、LiveData、ARouter、EventBus、WebView 与 EncryptedSharedPreferences 打通个人中心与设置模块全链路,涵盖登录态回流、用户信息渲染、设置页动作分发、确认弹窗、缓存清理、协议页复用、账号绑定、验证码重置密码、版本信息展示与退出登录刷新
2026-04-15 01:03:50
730
原创 Android 短视频项目实战:从用户中心页与沉浸式登录,到验证码鉴权、用户信息持久化和 EventBus 登录态同步
Android 短视频项目实战:基于 MVVM、DataBinding、ViewPager2、Fragment、Retrofit、EncryptedSharedPreferences 与 EventBus 打通用户模块全链路,涵盖 UserFragment 页面搭建、沉浸式登录页、验证码鉴权、协议跳转、用户详情获取、Token 加密存储、本地缓存与跨页面登录态同步
2026-04-13 16:19:05
733
原创 Android 短视频项目首页开发实战:从广场页广告轮播与网格列表,到发现页分类、播单与话题广场的数据驱动实现
Android 短视频项目首页开发实战:基于 MVVM、DataBinding、Retrofit、RecyclerView、XBanner 与 NestedScrollView 完成广场页轮播广告、图文网格列表及发现页分类播单、话题广场的数据驱动渲染
2026-04-10 23:57:40
942
1
原创 Android 短视频项目架构演进实战:网络层抽离到 lib_network、错误状态页 StatusView 统一收口、列表分页能力沉淀为可复用 BaseList 基建
本文介绍了Android短视频项目中网络层和UI层的架构优化过程。主要内容包括: 网络层封装:将响应实体类ResBase和ResList迁移到lib_network模块,封装OkHttpClient和Retrofit的单例提供者,统一网络请求基础设施。 状态管理优化:将StatusView错误页面逻辑收口到BaseFragment基类,实现状态码统一处理和错误页面的动态加载。 列表功能封装:将SmartRefreshLayout+RecyclerView的列表加载逻辑抽象为BaseList体系,包括Base
2026-04-07 10:14:27
972
原创 Android 短视频项目列表数据流实战:从服务端响应结构设计、Retrofit + okhttp 公共网络层与 MVVM 请求链路,到 Glide 图片加载、数据绑定适配器、 分页刷新与错误状态页
Android 短视频列表数据流实战:从服务端响应结构设计、Retrofit 公共网络层与 MVVM 请求链路,到 Glide 图片加载、DataBinding 绑定、SmartRefreshLayout 分页刷新与错误状态页完整落地
2026-04-05 23:15:56
1336
原创 Android 短视频项目工程搭建:从多模块拆分、公共基类封装、ARouter、MVVM、DataBinding 与屏幕适配,到首页 Tab/ViewPager2/沉浸式状态栏/视频列表骨架落地
Android 短视频项目工程搭建全链路实战:从多模块拆分、公共基座封装、ARouter、MVVM、DataBinding 与屏幕适配,到首页 Tab/ViewPager2/沉浸式状态栏/RecyclerView 视频列表骨架落地
2026-04-05 10:28:29
941
原创 Android 自定义 View 进阶实战全解析:从扩展控件与组合控件入门,到 onMeasure 测量、onDraw 绘制、手势交互处理及自定义布局容器实现的完整开发指南
本文系统讲解了Android自定义View的开发方法与实践技巧。主要内容包括: 自定义View的三种实现方式:扩展控件(继承现有控件)、组合控件(整合多个控件)和完全自定义View(从零实现测量、绘制和交互)。 详细演示了扩展控件开发流程,以验证码倒计时按钮为例,展示如何基于TextView扩展功能,包括计时逻辑实现和状态管理。 介绍了组合控件的实现方法,通过可折叠文本控件案例说明如何组合现有控件并支持XML属性配置。 深入讲解了完全自定义View的核心技术: onMeasure测量流程 onDraw图形绘
2026-03-30 00:00:32
1424
1
原创 Android 服务开发实战:从启动式服务、绑定交互到通知与前台媒体播放
本文介绍了Android服务开发的实战应用,重点讲解了启动式服务、绑定式服务以及前台服务的实现方法。首先阐述了服务的核心职责和三种常见形态,然后详细演示了如何使用startService创建后台服务,并分析其生命周期关键节点。接着讲解了bindService实现页面与服务双向交互的技术要点,包括Binder通道的建立和生命周期管理。最后结合Media3库,展示了如何构建带有动态通知的前台音乐播放服务,实现后台持续播放与用户交互的无缝衔接。通过完整的代码示例,帮助开发者掌握从基础服务创建到高级媒体播放集成的全
2026-03-28 06:49:43
761
原创 Android 广播机制实战:从系统广播监听、自定义登录通知到有序广播分发
Android 广播机制实战:从系统广播监听、自定义登录通知到有序广播分发
2026-03-27 18:18:05
775
原创 Android 媒体能力实战:从 Media3 音视频播放到 CameraX 拍照与视频录制
Android 媒体能力实战:从 Media3 音视频播放到 CameraX 拍照与视频录制
2026-03-25 11:36:52
1587
5
原创 Android 文件存储实战:从应用私有目录读写到网络文件落盘与公共存储接入
本文系统梳理了 Android 文件存储的完整实践路径,从应用内部/外部私有目录的读写操作到网络文件下载和公共存储接入。通过实战演示了不同存储位置的选择逻辑:内部私有目录适合敏感数据,外部私有目录适合大文件,公共存储用于跨应用共享。文章详细讲解了各环节实现要点,包括权限管理、流式操作、MediaStore接入等,并针对不同Android版本提供了适配方案。最后总结了不同存储场景的最佳实践,帮助开发者构建合规高效的文件存储方案。
2026-03-24 16:23:10
947
原创 Android Kotlin 全链路系统化指南:从基础语法、类型系统与面向对象,到函数式编程、集合操作、协程并发与 Flow 响应式数据流实战
Android Kotlin 基础语法、类型系统与面向对象,到函数式编程、集合操作、协程并发与 Flow 响应式数据流实战
2026-03-23 00:02:28
6796
原创 Android 模块化与组件化工程实战:从子模块库化、Gradle 配置统一到 ARouter 解耦跨模块页面通信与 Fragment 解耦集成
本文介绍了Android模块化与组件化工程的实战改造过程。首先将多个独立功能模块收拢到主应用中,通过Gradle配置实现模块运行形态切换(独立应用或依赖库)。接着建立公共基础库统一管理依赖,并通过ARouter实现跨模块页面通信与Fragment解耦集成。文章详细阐述了模块化改造的关键步骤,包括模块插件切换、Gradle统一配置、ARouter初始化与使用等,最终实现功能模块独立开发与维护,同时确保主应用能灵活组装各模块的能力。
2026-03-18 12:09:50
903
原创 Android 项目架构设计:从 MVC 、MVP 到 MVVM,基于 Retrofit、LiveData 与 DataBinding 的 Android 架构模式演进实战
Android 项目架构设计:从 MVC 、MVP 到 MVVM,基于 Retrofit、LiveData 与 DataBinding 的 Android 架构模式演进实战
2026-03-17 13:13:20
917
原创 Android Jetpack 页面架构实战:从 LiveData、ViewModel 到 DataBinding 的生命周期管理与数据绑定
Android Jetpack 页面架构实战:从 LiveData、ViewModel 到 DataBinding 的生命周期管理与数据绑定
2026-03-16 12:49:28
883
原创 Android 文件与数据存储实战:SharedPreferences、SQLite 与 Room 的渐进式实现
SharedPreferences、SQLite 与 Room 的 Android 数据库增删改查
2026-03-15 21:03:01
1033
原创 Android Handler 线程通信实战:使用实现 Handler 子线程回传、 Message 消息处理到 HandlerThread 与异步任务补充
Android 线程间通信实战:从 Handler、Message 到 HandlerThread
2026-03-12 11:49:21
743
原创 Android 网络编程入门到实战:HttpURLConnection、JSON 处理、OkHttp 与 Retrofit2
HttpURLConnection、JSON 处理、OkHttp 与 Retrofit2
2026-03-11 00:03:59
1102
原创 Android 权限处理完全指南:覆盖静态声明、动态申请、拒绝与永久拒绝判断、设置页授权、ActivityResultLauncher 新方案以及多版本兼容实战
Android 权限申请全流程实战:从清单声明、运行时请求、权限拒绝分支处理与 shouldShowRequestPermissionRationale,到 ActivityResultLauncher、版本兼容适配、设置页手动授权与特殊权限完整落地
2026-03-08 17:59:58
1282
原创 Android UI 布局与容器实战:LinearLayout、RelativeLayout、ConstraintLayout
Android UI 布局与容器实战:LinearLayout、RelativeLayout、ConstraintLayout
2026-03-07 18:03:27
776
原创 Android ViewPager2 + Fragment 实战:适配器、页面切换与 RadioGroup 联动
在 Android 的“多页面同屏切换”场景里,是最常见、也最易扩展的组合:它既能实现左右/上下滑动切换,也能和各种“Tab 控件”(如RadioGroupTabLayout)联动。ViewPager2 如何承载多个 Fragment?的职责是什么?如何用RadioGroup实现“点击切页 + 滑动同步选中”的 Tab 效果?实战中容易踩哪些坑?
2026-03-05 09:08:39
679
原创 Android Activity 与 Fragment 实战指南:生命周期、配置变化、任务栈、启动模式与权限
Android Activity 与 Fragment 实战指南:生命周期、配置变化、任务栈、启动模式与权限
2026-03-02 14:00:34
1111
原创 Android TextView、Span 、CheckBox 交互实战:协议可点击、富文本与单选控件
Android TextView、Span 、CheckBox 交互实战:协议可点击、富文本与单选控件
2026-02-26 22:17:19
538
原创 Android Activity 页面导航基础:Manifest 声明、Intent 显式/隐式跳转与数据传递
Activity 的职责与定位、Manifest 声明、Intent 跳转方式、页面间数据传递与结果回传
2026-02-24 18:22:26
822
原创 Android 里的轻量提示与弹窗体系:Snackbar、DialogFragment + AlertDialog、DatePickerDialog 与 PopupWindow
Snackbar、DialogFragment + AlertDialog、DatePickerDialog 与 PopupWindow
2026-02-24 13:27:03
921
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅