首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
第一行代码
雨白
创建于2025-05-20
订阅专栏
第一行代码——Android 第三版的笔记
等 9 人订阅
共57篇文章
创建于2025-05-20
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
Android 音视频播放:MediaPlayer 与 VideoView
讲解 MediaPlayer 核心状态机以解决 IllegalStateException 异常,通过例子演示如何利用 prepareAsync() 与监听器规避应用无响应错误,并正确处理资源释放。
从拍照到相册,安全高效地处理图片
安卓拍照与相册选图实战教程。从零开始,一步步完成。其中解决了 FileProvider 配置、Bitmap 二次采样避免 OOM 等问题。
精通 Android 通知
从创建核心的通知渠道、Android 13 权限适配,到使用 PendingIntent 实现点击交互与自动取消,再到长文本和大图样式等进阶技巧。
Kotlin 委托与泛型核心技巧
深入讲解 Kotlin 的泛型与委托。泛型通过类型参数化能够实现灵活、安全的代码。类委托可以消除模版代码;属性委托可以实现如 lazy 的通用逻辑。
手把手构建一个安全、健壮的 ContentProvider
从零开始,手把手教你构建一个能够安全共享数据的接口。首先讲解了URI规范、UriMatcher的使用,以及增删改查方法的实现。然后定义和应用了自定义权限来保障数据的安全。
ContentProvider:Android 跨程序数据共享的最佳实践
从旧模式的安全缺陷,再到ContentProvider的必要性与核心优势。然后说到了运行时权限的申请流程,最终通过读取系统联系人的例子,来展示权限管理与ContentResolver的数据查询操作。
高阶函数的应用:简化 SharedPreferences 与 ContentValues 操作
通过使用 Kotlin 高阶函数与扩展函数,简化 SharedPreferences 与 ContentValues API 繁琐的样板代码。
SQLite 数据库的事务与无损升级
讲解事务管理与数据库的无损升级。你将看到如何通过事务保障数据的原子性,并且讲解了传统的try-catch-finally到现代的transaction扩展方法,最终是onUpgrade升级方案。
详解 Android 数据持久化技术
详细讲解文件存储、SharedPreferences(用于键值对)和原生SQLite数据库技术,并且完成了保存用户输入、实现“记住密码”功能以及执行基本的数据库增删改查操作。
初识版本控制工具 Git
Git 最基础的操作。讲解在 Windows 系统上如何安装 Git,配置和创建仓库。简要解释“暂存区”概念,并演示如何添加修改,提交代码。
高阶函数与内联优化
深入讲解Kotlin高阶函数。从定义和函数类型,再到Lambda表达式以及带接收者函数类型。解析了inline内联函数的原理与非局部返回,最后介绍了noinline与crossinline关键字。
广播最佳实践:实现强制下线功能
利用广播机制(Broadcast)实现“强制下线”功能。在共同基类BaseActivity中动态注册广播接收器,从而可以响应全局下线广播消息。
发送自定义广播
讲解如何创建标准广播和有序广播,在有序广播下,接收器的接收顺序,并且说了 setPackage() 方法以及 android:exported 配置的作用。
深入理解广播机制 (BroadcastReceiver)
讲解 Android 中的广播类型:标准广播与有序广播,并且讲述了动态与静态注册的方式。最后解释为什么不用在 onReceive 方法中执行耗时操作。
扩展函数和运算符重载
解析 Kotlin 的扩展函数和运算符重载。讲述如何为封闭类增加其外部的行为,并利用 operator 关键字和特定的函数名完成运算符重载。
实现动态加载布局
使用 sw<N>dp(最小宽度)限定符,来为手机和平板设备提供专门的布局。主要是通过创建特定的资源文件夹,系统会自动加载合适的布局文件。
Fragment 最佳实践:兼容手机和平板的简易新闻应用
讲解如何用 Fragment 构建兼容手机与平板的简易新闻应用。使用最小宽度限定符来动态选择布局,并且实现点击新闻列表后,手机会跳转至新页面,而平板会在当前页面更新内容。
搞懂 Fragment 的生命周期
讲解 Fragment 的核心状态:运行、暂停、停止、销毁,并且解析了 Fragment 中的每一个生命周期回调,最后通过示例,展示 Fragment 不同的行为,对应执行的方法。
Fragment 入门教程:从核心概念到实践操作
讲述 Fragment 的基本概念,解释了其重要性。并且介绍了 Fragment 的静态与动态使用方式、返回栈的管理以及 Fragment 与 Activity 之间的常用交互方法。
Kotlin 的延迟初始化和密封类
使用 lateinit 来声明那些无法在构造时立即初始化的非空属性,从而避免繁琐的空安全调用。同时,展示如何利用密封类来增强 when 表达式的类型安全性和完备性。
下一页