第一行代码Android第2版(郭霖)

书: https://pan.baidu.com/s/1A6ZLSPMbCiZ-L4eRucUvXQ?pwd=kt7i
一些笔记分享给大家:

一、Android开发基础

  1. “Android Studio是官方推荐的开发工具,Gradle负责项目构建,build.gradle文件管理依赖库。”
  2. Activity是用户界面的载体,onCreate()是其生命周期起点,setContentView()绑定布局。”
  3. Log.d(TAG, "message")用于调试输出,比System.out.println更高效,可通过Logcat过滤查看。”

二、UI设计与布局

  1. “布局文件(XML)通过LinearLayoutRelativeLayout等组织控件,ConstraintLayout是性能最优的现代布局。”
  2. RecyclerView替代ListView,通过ViewHolder复用Item视图,结合LayoutManager实现列表、网格、瀑布流。”
  3. Material Design强调卡片、阴影、动画,AppCompat库兼容旧版本Material组件。”

三、四大组件

  1. Activity之间通过Intent跳转,显式Intent指定目标类,隐式Intent匹配<intent-filter>。”
  2. Service在后台执行长时间任务,startService()启动后需手动停止,bindService()绑定后随客户端销毁。”
  3. BroadcastReceiver监听系统或应用广播,动态注册需代码中调用registerReceiver(),静态注册在AndroidManifest.xml声明。”
  4. ContentProvider跨应用共享数据,Uri标识资源路径,Cursor返回查询结果。”

四、数据存储

  1. SharedPreferences存储键值对,适合简单配置;SQLite数据库通过SQLiteOpenHelper管理表结构升级。”
  2. “文件存储分内部存储(应用私有)和外部存储(需权限),Context提供openFileInput()/openFileOutput()方法。”

五、网络通信

  1. OkHttp是高效网络库,支持同步/异步请求;Retrofit基于OkHttp,通过接口注解封装RESTful API调用。”
  2. “JSON解析推荐GsonfromJson()将JSON字符串转为Java对象,toJson()反向转换。”

六、多线程与异步

  1. “主线程(UI线程)禁止耗时操作,AsyncTask简化异步任务,但已废弃,推荐Kotlin协程RxJava。”
  2. Handler实现线程间通信,Looper维护消息队列,Message封装数据传递。”

七、高级特性

  1. Fragment是模块化UI组件,通过FragmentManager动态添加/替换,ViewPager2实现滑动切换。”
  2. ViewModel保存界面数据,屏幕旋转时不销毁;LiveData观察数据变化,自动更新UI。”

八、性能优化

  1. “内存泄漏常见场景:Handler持有Activity引用、静态变量引用View,LeakCanary工具检测泄漏。”
  2. ProGuard混淆代码缩减APK体积,Android Profiler监控CPU、内存、网络性能。”

发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注