课程培训
Android开发培训课程体系(选修)

Android培训课程体系(选修)

课程目录

  1. 专题一:Android开发基础与环境搭建

  2. 专题二:Kotlin/Java语言快速入门

  3. 专题三:UI界面开发基础(布局与控件)

  4. 专题四:Activity与Fragment组件

  5. 专题五:高级UI组件与列表开发

  6. 专题六:数据持久化与文件存储

  7. 专题七:多媒体应用开发

  8. 专题八:Service与BroadcastReceiver

  9. 专题九:ContentProvider与数据共享

  10. 专题十:网络编程与数据解析

  11. 专题十一:传感器与定位服务

  12. 专题十二:性能优化与内存管理

  13. 专题十三:应用打包与发布

  14. 专题十四:Android项目实战(综合应用)

 

专题一:Android开发基础与环境搭建

  • 培训对象:零基础入门学员、需要建立Android开发知识框架的初学者、从其他平台转型的开发者。

  • 培训目标

    1. 了解Android系统的发展历程、系统架构与各版本特性,建立对Android平台的整体认知。

    2. 掌握Android开发环境的搭建(Android Studio、SDK、模拟器),熟悉开发工具的基本使用。

    3. 完成第一个Android应用程序,理解项目结构、应用组成和调试方法。

  • 培训内容介绍

    1. Android系统概述:了解Android的起源与发展历程(由Google主导的开源操作系统),认识Android在智能手机、平板、车载、可穿戴设备等领域的广泛应用

    2. Android系统架构:学习Android的四层架构(Linux内核层、系统运行库层、应用框架层、应用层),理解各层的作用与相互关系

    3. Android版本演进:了解Android各主要版本的特点(从Android 1.0到Android 14),掌握API级别与版本号的对应关系

    4. 开发环境搭建:学习下载和安装Android Studio(官方IDE),配置Android SDK、SDK Tools、平台工具等

    5. 模拟器配置:学习创建和管理Android虚拟设备(AVD),配置模拟器的设备类型、系统镜像、内存、存储等参数

    6. 真机调试:掌握Android真机调试的配置方法(开启开发者选项、USB调试),学习使用adb命令管理设备

    7. 第一个Android项目:创建Hello World项目,理解项目的基本结构(manifests、java、res、Gradle脚本),运行到模拟器或真机

    8. Android项目结构:深入学习项目目录结构,掌握清单文件(AndroidManifest.xml)、资源文件(res)、Java/Kotlin源码的组织方式

    9. Gradle构建系统:了解Gradle在Android项目中的作用,学习build.gradle的配置(SDK版本、依赖管理、构建类型)

    10. 日志工具:学习使用Logcat查看和过滤日志,掌握不同日志级别(verbose、debug、info、warn、error)的使用

    11. ADB命令:掌握常用ADB命令(安装应用、查看设备、日志抓取、文件传输),提高开发和调试效率

    12. 开发资源:介绍Android官方文档、开发者社区、开源项目等学习资源,规划学习路径。

 

专题二:Kotlin/Java语言快速入门

  • 培训对象:需要掌握Android开发语言的初学者、从其他语言转型的开发者。

  • 培训目标

    1. 理解Kotlin作为Android官方推荐语言的优势,掌握Kotlin/Java核心语法。

    2. 掌握面向对象编程思想(类、对象、继承、接口、泛型),能够在Android开发中应用。

    3. 学习Kotlin/Java的高级特性(Lambda、协程、集合操作),提高代码效率和可读性。

  • 培训内容介绍

    1. Java基础语法:回顾Java的基本语法(变量、数据类型、运算符、控制流、数组),为Android开发打下基础

    2. Kotlin概述:了解Kotlin作为现代编程语言的特点(简洁、安全、互操作性),认识其在Android开发中的优势

    3. Kotlin基础语法:掌握变量声明(val/var)、基本数据类型、字符串模板、条件表达式(if/when)、循环语句

    4. Kotlin函数:学习函数的定义(fun)、参数默认值、命名参数、单表达式函数、扩展函数

    5. Kotlin面向对象:掌握类的定义、属性、构造方法(主构造/次构造)、继承、接口、数据类、密封类、单例对象

    6. Kotlin空安全:理解Kotlin的空安全设计(可空类型、安全调用?.、Elvis运算符?:、非空断言!!),避免空指针异常

    7. 泛型与集合:学习泛型的概念,掌握Kotlin/Java集合框架(List、Set、Map),了解不可变集合与可变集合的区别

    8. Lambda表达式:掌握Lambda表达式的语法,学习在集合操作中的应用(filter、map、forEach、reduce)

    9. 协程基础:了解协程的概念(轻量级线程),学习使用协程处理异步任务(launch、async、suspend函数),简化回调

    10. 异常处理:掌握try-catch-finally的使用,了解Kotlin中受检异常与非受检异常的处理方式

    11. 与Java互操作:学习Kotlin与Java的互操作性,了解在混合语言项目中的注意事项

    12. 语言特性对比:对比Kotlin和Java的特性差异,根据项目需求选择合适的语言。

 

专题三:UI界面开发基础(布局与控件)

  • 培训对象:需要掌握Android界面开发、实现各种UI效果的开发人员。

  • 培训目标

    1. 理解Android UI的层次结构(View、ViewGroup),掌握XML布局文件的使用方法。

    2. 掌握常用布局管理器(LinearLayout、RelativeLayout、ConstraintLayout)的使用,实现复杂的界面布局。

    3. 掌握基础UI控件的使用(TextView、Button、EditText、ImageView),实现用户交互。

  • 培训内容介绍

    1. UI体系概述:了解Android UI的层次结构(Activity、Window、ViewGroup、View),认识XML布局文件的作用

    2. 布局文件基础:学习在res/layout目录下创建XML布局文件,掌握在Activity中加载布局的方法(setContentView)

    3. 线性布局:掌握LinearLayout的orientation、gravity、layout_weight等属性,实现线性排列布局

    4. 相对布局:学习RelativeLayout的布局规则(layout_above、layout_below、alignParentTop),实现相对位置定位

    5. 帧布局:了解FrameLayout的特点(层叠显示),掌握其在重叠元素布局中的应用

    6. 约束布局:深入学习ConstraintLayout作为主流布局的优势,掌握约束(constraints)的添加方式(拖拽编辑器、XML属性)

    7. 表格布局:学习TableLayout的使用,掌握行(TableRow)和列的配置方法

    8. 网格布局:了解GridLayout的特点,掌握行列配置和跨行列设置

    9. TextView:掌握TextView的常用属性(text、textSize、textColor、fontFamily、gravity、maxLines)

    10. Button:学习Button的点击事件处理(setOnClickListener、实现View.OnClickListener接口、XML中onClick属性)

    11. EditText:掌握EditText的输入类型设置(inputType)、提示文本(hint)、监听文本变化(TextWatcher)

    12. ImageView:学习ImageView显示图片(src、background),掌握scaleType属性对图片缩放方式的控制

    13. Toast:学习使用Toast显示简短提示消息,掌握自定义Toast的方法

 

专题四:Activity与Fragment组件

  • 培训对象:需要掌握Android核心组件、实现页面跳转与管理的开发人员。

  • 培训目标

    1. 理解Activity作为界面载体的作用,掌握Activity的生命周期与启动模式。

    2. 掌握Intent的使用,实现页面间的跳转和数据传递。

    3. 理解Fragment的设计理念,掌握Fragment的创建、管理与通信。

  • 培训内容介绍

    1. Activity概述:理解Activity作为Android四大组件之一的作用(提供用户交互界面),掌握Activity的创建和注册

    2. Activity生命周期:深入学习Activity的生命周期回调(onCreate、onStart、onResume、onPause、onStop、onDestroy、onRestart),理解各阶段适合执行的操作

    3. Activity启动模式:掌握四种启动模式(standard、singleTop、singleTask、singleInstance)的特点与适用场景,理解任务栈(Task)的管理机制

    4. Intent基础:学习显式Intent和隐式Intent的使用,掌握通过Intent传递数据(putExtra、Bundle)的方法

    5. Intent Filter:了解Intent Filter的概念,学习在AndroidManifest.xml中配置Activity的Intent Filter,实现隐式启动

    6. Activity间数据传递:学习通过Intent传递基本类型、Serializable对象、Parcelable对象的方法

    7. Activity数据回传:掌握startActivityForResult和onActivityResult的使用,实现页面返回数据传递(新版本推荐使用Activity Result API)

    8. Fragment概述:了解Fragment的设计理念(模块化界面、重用性),掌握Fragment的创建方法

    9. Fragment生命周期:学习Fragment的生命周期回调(onAttach、onCreate、onCreateView、onActivityCreated、onStart、onResume、onPause、onStop、onDestroyView、onDestroy、onDetach)

    10. Fragment静态加载:学习在XML布局文件中添加Fragment(<fragment>标签),掌握静态加载方式

    11. Fragment动态加载:掌握FragmentManager和FragmentTransaction的使用(add、remove、replace、hide、show、commit),实现动态管理Fragment

    12. Fragment通信:学习Fragment与Activity的通信方式(接口回调、ViewModel共享数据、EventBus),掌握Fragment之间的通信方法

 

专题五:高级UI组件与列表开发

  • 培训对象:需要实现复杂界面、列表展示、滑动交互的开发人员。

  • 培训目标

    1. 掌握AdapterView系列组件(ListView、Spinner、AutoCompleteTextView)的使用与适配器模式。

    2. 掌握RecyclerView作为现代列表组件的核心用法,实现复杂列表布局。

    3. 学习ViewPager、ViewPager2等滑动组件,实现页面滑动和选项卡导航。

  • 培训内容介绍

    1. ListView基础:学习ListView的使用,掌握ArrayAdapter和SimpleAdapter配置数据源,实现简单列表

    2. BaseAdapter自定义:学习继承BaseAdapter实现自定义适配器,掌握getView方法中的ViewHolder模式优化性能

    3. ListView优化:掌握convertView复用、异步加载图片、分页加载等性能优化技巧

    4. ListView交互:学习设置列表项点击事件(OnItemClickListener),实现长按删除、多选等功能

    5. Spinner:学习下拉列表Spinner的使用,配置数据适配器,处理选中事件

    6. AutoCompleteTextView:掌握自动完成输入框的使用,配置适配器,实现输入提示功能

    7. RecyclerView概述:了解RecyclerView作为ListVie的升级替代品的优势(灵活性、性能、动画支持)

    8. RecyclerView基础:学习RecyclerView的基本使用,掌握LayoutManager、Adapter、ViewHolder的配置

    9. RecyclerView布局管理器:学习LinearLayoutManager(线性布局)、GridLayoutManager(网格布局)、StaggeredGridLayoutManager(瀑布流布局)的使用

    10. RecyclerView项装饰:学习添加分割线(ItemDecoration),掌握自定义装饰器的实现

    11. RecyclerView动画:了解默认动画效果,学习自定义添加/移除动画

    12. ViewPager:学习ViewPager的使用,配置PagerAdapter,实现页面滑动切换

    13. ViewPager与Fragment:学习FragmentPagerAdapter和FragmentStatePagerAdapter的使用,实现Fragment页面滑动

    14. ViewPager2:了解ViewPager2作为ViewPager的升级版本的优势(支持垂直滑动、RTL布局、更好的RecyclerView集成)

    15. TabLayout:学习TabLayout与ViewPager的联动,实现顶部/底部选项卡导航

 

专题六:数据持久化与文件存储

  • 培训对象:需要实现数据本地化存储、处理应用数据的开发人员。

  • 培训目标

    1. 掌握SharedPreferences存储轻量级数据的方法,用于保存用户设置和简单数据。

    2. 掌握文件存储机制(内部存储、外部存储),实现文件的读写操作。

    3. 掌握SQLite数据库存储,学习Room持久化库的使用,实现结构化数据管理。

  • 培训内容介绍

    1. SharedPreferences基础:学习SharedPreferences的使用(获取实例、写入数据(edit/apply/commit)、读取数据),适用于存储简单的键值对(用户设置)

    2. SharedPreferences高级:学习管理多个SharedPreferences文件,监听数据变化(OnSharedPreferenceChangeListener)

    3. 文件存储概述:了解Android的文件存储机制(内部存储、外部存储、缓存目录),掌握不同存储位置的适用场景

    4. 内部存储:学习使用openFileOutput和openFileInput读写内部存储文件,掌握文件模式和权限设置

    5. 外部存储:学习检测外部存储状态,读写公共目录(DCIM、Downloads、Music)和应用专属目录

    6. 运行时权限:学习Android 6.0+的动态权限机制,掌握请求读写外部存储权限的方法

    7. 缓存文件:学习使用getCacheDir和getExternalCacheDir获取缓存目录,管理临时文件

    8. SQLite基础:了解SQLite作为轻量级嵌入式数据库的特点,学习创建数据库、表,使用SQLiteOpenHelper进行数据库操作

    9. SQLite操作:掌握使用SQLiteDatabase执行SQL语句(增删改查),学习使用insert、update、delete、query方法

    10. SQLite事务:学习使用beginTransaction、setTransactionSuccessful、endTransaction管理数据库事务

    11. Room概述:学习Room作为官方推荐的数据库抽象层的优势(编译时SQL检查、简洁的API、与LiveData/RxJava集成)

    12. Room实体:学习使用@Entity定义数据表,配置主键、列名、索引

    13. Room DAO:掌握使用@Dao定义数据访问对象,编写查询、插入、更新、删除方法

    14. Room Database:学习创建抽象类继承RoomDatabase,配置数据库版本和迁移

    15. Room与LiveData:学习将Room查询返回LiveData,实现数据变化自动更新UI

 

专题七:多媒体应用开发

  • 培训对象:需要实现音频/视频播放、拍照录像、图像处理等多媒体功能的开发人员。

  • 培训目标

    1. 掌握音频播放和控制技术(MediaPlayer、AudioManager),实现音乐播放器功能。

    2. 掌握视频播放技术(VideoView、MediaPlayer+SurfaceView),实现视频播放功能。

    3. 掌握相机功能开发(CameraX、Camera2),实现拍照和录像功能。

  • 培训内容介绍

    1. MediaPlayer基础:学习MediaPlayer的使用(创建、设置数据源、准备、开始、暂停、停止、释放),实现音频播放

    2. MediaPlayer高级:掌握设置播放进度(seekTo)、获取播放状态、循环播放、设置音量等功能

    3. AudioManager:学习使用AudioManager控制系统音量、音频焦点(requestAudioFocus),处理多音频冲突

    4. SoundPool:了解SoundPool用于播放短促音效(游戏音效、按键音),学习加载和播放音效的方法

    5. VideoView:学习VideoView播放视频(设置视频URI、开始、暂停、停止),掌握MediaController的使用

    6. MediaPlayer+SurfaceView:学习使用MediaPlayer与SurfaceView配合实现自定义视频播放器,掌握SurfaceHolder.Callback的使用

    7. CameraX概述:了解CameraX作为Jetpack支持库的优势(生命周期感知、易用性、设备兼容性)

    8. CameraX配置:学习在项目中集成CameraX,配置预览、图像分析、图像捕获用例

    9. 预览功能:实现相机预览,将预览画面显示在PreviewView上

    10. 拍照功能:学习实现拍照功能,保存照片到文件,处理图像旋转和方向

    11. 录像功能:学习使用CameraX实现视频录制,配置录制参数(分辨率、比特率、帧率)

    12. MediaRecorder:了解MediaRecorder录制音视频的方法(设置音频源、视频源、输出格式、编码器)

    13. 图像处理:学习使用Bitmap和BitmapFactory处理图像(缩放、裁剪、旋转、格式转换)

 

专题八:Service与BroadcastReceiver

  • 培训对象:需要实现后台任务、跨页面通信、系统事件响应的开发人员。

  • 培训目标

    1. 理解Service的概念与作用,掌握Service的生命周期和启动方式。

    2. 掌握BroadcastReceiver的使用,实现应用内和系统广播的接收与发送。

    3. 学习通知(Notification)的使用,实现前台服务和状态栏通知。

  • 培训内容介绍

    1. Service概述:了解Service作为Android四大组件之一的作用(执行后台长时间操作,无用户界面),掌握Service的创建与声明

    2. Service生命周期:学习Service的生命周期回调(onCreate、onStartCommand、onBind、onDestroy),理解不同启动方式下的生命周期差异

    3. Started Service:掌握启动服务的方式(startService),学习处理onStartCommand方法的返回值(START_STICKY、START_NOT_STICKY、START_REDELIVER_INTENT)

    4. Bound Service:学习通过绑定服务(bindService)实现与服务的交互,掌握Binder的实现方式和onServiceConnected回调

    5. IntentService:了解IntentService作为自动停止的服务,学习其在处理异步任务中的应用

    6. 前台服务:学习创建前台服务(startForeground),配置通知(Notification)显示在状态栏,了解Android 8.0+的前台服务限制

    7. JobScheduler/WorkManager:了解Android后台执行限制,学习使用WorkManager处理延迟后台任务

    8. BroadcastReceiver概述:了解广播接收者的作用(接收系统广播和应用内广播),掌握广播接收者的创建和注册方式

    9. 静态注册:学习在AndroidManifest.xml中注册广播接收者,配置intent-filter接收特定广播

    10. 动态注册:学习在代码中注册广播接收者(registerReceiver),掌握取消注册(unregisterReceiver)的必要性

    11. 系统广播:学习监听常用系统广播(开机完成、网络变化、电量变化、屏幕开关),注意Android版本对隐式广播的限制

    12. 自定义广播:掌握发送自定义广播(sendBroadcast、sendOrderedBroadcast),了解有序广播的优先级和截断功能

    13. 本地广播:了解LocalBroadcastManager的使用(已废弃),学习使用LiveData/Flow替代方案

    14. Notification基础:学习创建通知渠道(NotificationChannel),掌握构建通知(NotificationCompat.Builder)的方法

    15. 通知样式:学习设置通知标题、内容、图标、大图样式、进度条、按钮等样式

    16. 通知点击事件:学习使用PendingIntent设置通知点击后的跳转行为(启动Activity、发送广播、启动Service)

 

专题九:ContentProvider与数据共享

  • 培训对象:需要实现跨应用数据共享、访问系统通讯录等内容的开发人员。

  • 培训目标

    1. 理解ContentProvider的作用与原理,掌握通过ContentResolver访问数据的方法。

    2. 学习访问系统ContentProvider(联系人、媒体库、日历),实现数据读取和操作。

    3. 掌握自定义ContentProvider的实现,实现应用数据的跨进程共享。

  • 培训内容介绍

    1. ContentProvider概述:了解ContentProvider作为Android四大组件之一的作用(跨应用数据共享),理解其与Uri的关系

    2. Uri基础:学习Uri的组成(scheme、authority、path、id),掌握Uri.parse()将字符串转换为Uri的方法

    3. ContentResolver:掌握通过ContentResolver查询(query)、插入(insert)、更新(update)、删除(delete)数据的方法

    4. 访问系统联系人:学习读取联系人数据(ContactsContract),获取联系人姓名、电话号码、邮箱等信息

    5. 权限申请:学习请求读取联系人权限(READ_CONTACTS),处理运行时权限请求

    6. 访问媒体库:学习读取外部存储中的图片、音频、视频文件信息,使用MediaStore API

    7. 访问日历:了解CalendarContract的使用,读取和添加日历事件

    8. ContentObserver:学习使用ContentObserver监听数据变化,实现数据的实时更新

    9. 自定义ContentProvider:学习创建自定义ContentProvider类继承ContentProvider,实现onCreate、query、insert、update、delete、getType方法

    10. UriMatcher:学习使用UriMatcher匹配不同的Uri路径,区分不同的数据操作请求

    11. Provider声明:学习在AndroidManifest.xml中声明ContentProvider,配置authorities和exported属性

    12. 数据共享权限:了解通过permission属性控制ContentProvider的访问权限,实现安全的跨进程数据共享

 

专题十:网络编程与数据解析

  • 培训对象:需要实现网络请求、与服务器交互的开发人员。

  • 培训目标

    1. 理解HTTP协议基础,掌握Android网络编程的基本方法。

    2. 掌握常用网络框架(OkHttp、Retrofit)的使用,实现网络请求和文件上传下载。

    3. 学习JSON/XML数据解析技术,处理服务器返回的数据。

  • 培训内容介绍

    1. HTTP协议基础:回顾HTTP协议的基本概念(请求方法GET/POST、状态码、请求头、响应头、URL组成)

    2. 网络权限:学习在AndroidManifest.xml中声明网络权限(INTERNET),了解网络安全配置(Network Security Configuration)

    3. HttpURLConnection:学习使用HttpURLConnection发送HTTP请求,掌握设置请求方法、超时、请求头、读取响应的方法

    4. OkHttp概述:了解OkHttp作为高效HTTP客户端的优势(连接池、GZIP压缩、响应缓存),学习在项目中集成OkHttp

    5. OkHttp基本使用:掌握创建OkHttpClient、构建Request、发起同步/异步请求、处理响应的方法

    6. OkHttp拦截器:学习使用拦截器(Interceptor)实现日志记录、请求头添加、重试机制等

    7. Retrofit概述:了解Retrofit作为类型安全HTTP客户端的优势,掌握其基于接口的动态代理机制

    8. Retrofit基本使用:学习定义API接口(@GET、@POST、@Path、@Query、@Body),创建Retrofit实例,发起请求

    9. JSON解析:了解JSON数据格式,学习使用JSONObject和JSONArray手动解析JSON

    10. Gson:学习使用Google的Gson库(toJson、fromJson),将JSON数据转换为Java/Kotlin对象

    11. Moshi:了解Moshi作为Kotlin友好的JSON解析库,学习其在Kotlin项目中的使用

    12. XML解析:学习使用Pull解析器(XmlPullParser)解析XML数据,了解SAX和DOM解析方式

    13. 文件上传:学习使用OkHttp/Retrofit实现文件上传,配置MultipartBody和RequestBody

    14. 文件下载:学习实现文件下载功能,使用OkHttp的流式处理和进度监听

    15. 图片加载库:了解Glide和Coil等图片加载库的使用,简化网络图片的加载和缓存

    16. WebSocket:了解WebSocket协议的特点,学习使用OkHttp的WebSocket实现实时通信

 

专题十一:传感器与定位服务

  • 培训对象:需要开发基于位置服务、传感器应用的开发人员。

  • 培训目标

    1. 掌握Android传感器框架,学习加速度计、陀螺仪等常用传感器的使用。

    2. 掌握位置服务API的使用(FusedLocationProviderClient),实现位置获取和地理围栏。

    3. 学习集成地图服务(百度地图/高德地图),实现地图显示、定位、标记等功能。

  • 培训内容介绍

    1. 传感器框架概述:了解Android传感器框架的架构,掌握SensorManager的作用,学习获取传感器列表的方法

    2. 常用传感器:学习加速度计(ACCELEROMETER)、陀螺仪(GYROSCOPE)、磁力计(MAGNETIC_FIELD)、光线传感器(LIGHT)、接近传感器(PROXIMITY)的工作原理

    3. 传感器事件监听:学习实现SensorEventListener,处理onSensorChanged事件,获取传感器数据

    4. 传感器校准:了解传感器数据校准的方法,学习处理传感器精度变化

    5. 步数检测:学习使用计步器传感器(STEP_COUNTER、STEP_DETECTOR),实现简单计步功能

    6. 位置服务概述:了解Android位置服务的发展(从LocationManager到FusedLocationProvider),学习Google Play Services的集成

    7. 位置权限:学习申请位置权限(ACCESS_FINE_LOCATION、ACCESS_COARSE_LOCATION),处理运行时权限请求

    8. FusedLocationProviderClient:掌握获取最新位置(getLastLocation)、请求位置更新(requestLocationUpdates)的方法

    9. 位置更新设置:学习配置LocationRequest(优先级、更新间隔、最小位移距离),平衡精度和电量消耗

    10. 地理编码与逆地理编码:学习使用Geocoder实现地址与经纬度的相互转换

    11. 地理围栏:了解地理围栏(Geofencing)的概念,学习创建和监控地理围栏区域

    12. 地图SDK集成:学习在项目中集成百度地图或高德地图SDK,配置API密钥和权限

    13. 地图显示:实现地图的显示和生命周期管理,设置地图类型、UI控件、手势

    14. 定位图标:在地图上显示当前位置,实现定位图标跟随移动

    15. 地图标记:学习在地图上添加标记(Marker),设置标记的信息窗口,处理点击事件

    16. 路线规划:了解路径规划功能,学习实现起点到终点的路线绘制

 

专题十二:性能优化与内存管理

  • 培训对象:需要优化应用性能、提升用户体验的中高级开发人员。

  • 培训目标

    1. 掌握Android性能分析工具的使用(Profiler、LeakCanary、StrictMode),定位性能问题。

    2. 学习布局优化、内存优化、启动优化、包体积优化等核心优化技术。

    3. 理解Android的内存管理机制,掌握避免内存泄漏的最佳实践。

  • 培训内容介绍

    1. 性能分析工具:学习使用Android Studio的Profiler工具(CPU、内存、网络、电量)监控应用性能

    2. LeakCanary:学习集成LeakCanary检测内存泄漏,理解泄漏分析报告,修复常见泄漏

    3. StrictMode:学习启用StrictMode检测线程策略和虚拟机策略(磁盘读写、网络操作、Activity泄漏)

    4. 布局优化:学习使用ConstraintLayout减少布局嵌套,掌握ViewStub延迟加载、merge标签减少层级、include标签复用布局

    5. 过度绘制:了解过度绘制(Overdraw)的概念,使用开发者选项的GPU过度绘制调试工具分析问题,学习优化方案

    6. 内存泄漏常见场景:学习识别内存泄漏的常见场景(Handler导致的内存泄漏、单例持有Context、匿名内部类、未取消注册)

    7. Handler内存泄漏:学习使用静态内部类+弱引用(WeakReference)解决Handler内存泄漏问题

    8. Context使用:理解Application Context和Activity Context的区别,掌握在不同场景下选择合适的Context

    9. Bitmap优化:学习Bitmap的内存占用计算,掌握图片压缩(inSampleSize)、缓存策略(LruCache)、复用(inBitmap)等优化技术

    10. 启动优化:了解冷启动、热启动、温启动的区别,学习使用启动分析工具(LaunchProfiler),掌握Application初始化优化、异步初始化任务

    11. 启动优化进阶:学习使用启动器(Startup)库管理初始化任务,实现任务依赖和异步执行

    12. 包体积优化:掌握代码混淆(R8/ProGuard)的配置,移除未使用的代码和资源(资源缩小、资源合并)

    13. 图片优化:学习使用WebP格式替代PNG/JPEG,掌握矢量图(VectorDrawable)的使用,合理设置图片压缩选项

    14. APK分析:学习使用APK Analyzer分析APK组成,找出占用空间大的模块,针对性地进行优化

    15. 线程优化:合理使用线程池管理线程,避免创建过多线程导致资源竞争,学习使用协程优化线程模型

    16. 电量优化:了解电量优化的最佳实践(合并网络请求、使用JobScheduler/WorkManager、避免频繁唤醒设备)

 

专题十三:应用打包与发布

  • 培训对象:需要将应用打包、签名、发布到应用商店的开发人员。

  • 培训目标

    1. 掌握应用签名的原理和配置方法,生成签名密钥。

    2. 学习构建发布版本(Release)APK/App Bundle,配置构建变体。

    3. 了解应用加固和应用上架流程,成功发布应用到各大应用商店。

  • 培训内容介绍

    1. 应用签名概述:了解应用签名的原理(数字证书验证应用作者),认识签名在应用发布中的作用

    2. 密钥生成:学习使用keytool生成签名密钥(keystore文件),配置密钥别名、有效期、组织信息

    3. Gradle签名配置:学习在build.gradle中配置签名信息(storeFile、storePassword、keyAlias、keyPassword)

    4. 签名版本:了解Android签名的V1(JAR签名)、V2(全文件签名)、V3(密钥轮换)方案,掌握配置方法

    5. 构建类型:学习配置buildTypes(debug、release),区分调试版本和发布版本的设置

    6. 产品风味:掌握productFlavors的配置,实现不同渠道(华为、小米、应用宝)的定制化打包

    7. 构建变体:理解build variants的概念,学习切换不同构建变体进行开发和打包

    8. APK生成:学习通过菜单Build生成APK,掌握使用命令行gradlew assembleRelease生成发布包

    9. App Bundle:了解Android App Bundle(AAB)的优势(按需分发、动态交付),学习生成和测试AAB文件

    10. 应用加固:了解应用加固的作用(防止反编译、保护代码),学习使用第三方加固服务(360加固、腾讯云加固)

    11. Google Play发布:学习注册Google Play开发者账号,创建应用,上传APK/AAB,填写应用信息(标题、描述、截图、分类)

    12. 国内应用商店:了解华为、小米、OPPO、VIVO、应用宝等国内应用商店的上架流程,准备各商店要求的材料

    13. 隐私政策:学习编写隐私政策,符合相关法律法规要求,配置在应用和商店页面

    14. 版本管理:学习配置versionCode和versionName,掌握版本更新的管理方法

    15. 内测分发:了解使用TestFlight(iOS)或内测平台(蒲公英、fir.im)进行应用内测的方法

 

专题十四:Android项目实战(综合应用)

  • 培训对象:需要综合运用Android技术栈、完成完整项目开发的中高级开发人员。

  • 培训目标

    1. 掌握企业级项目开发的全流程(需求分析、技术选型、架构设计、代码实现、测试发布)。

    2. 能够综合运用所学知识(UI、数据存储、网络、多媒体、传感器)完成一个完整的Android应用。

    3. 学习项目规范、代码组织、团队协作的最佳实践。

  • 培训内容介绍

    1. 项目一:影视分享App:使用Kotlin + Jetpack组件开发完整的影视分享应用,包含用户登录、电影列表、电影详情、收藏、分享、第三方登录等功能

    2. 需求分析:学习阅读产品需求文档,进行功能模块划分(用户模块、电影模块、收藏模块、分享模块),编写需求规格说明书

    3. 架构设计:学习MVVM架构的设计,掌握View、ViewModel、Model、Repository的分层原则,理解数据驱动UI的思想

    4. 技术选型:根据项目需求选择合适的技术栈(Retrofit、Room、Glide、LiveData、Navigation、协程)

    5. 项目搭建:创建项目基础架构,配置依赖管理,建立统一的代码风格规范

    6. Material Design:学习Material Design设计规范,实现侧滑导航(DrawerLayout)、悬浮按钮(FloatingActionButton)、底部消息(Snackbar)等设计元素

    7. 用户模块:实现用户注册、登录功能,集成第三方登录(微信、QQ),掌握Token管理和登录状态保持

    8. 电影列表:实现电影列表展示(RecyclerView),支持分页加载、下拉刷新,掌握网络请求和JSON解析

    9. 电影详情:实现电影详情页,包含图片轮播、评分展示、简介、演员列表,掌握ViewPager和Fragment的应用

    10. 收藏功能:实现电影收藏功能,使用Room数据库保存收藏数据,在收藏列表中展示

    11. 分享模块:集成ShareSDK实现分享功能,将电影信息分享到微信、QQ、微博等社交平台

    12. 项目二:科学饮食管理系统:实现营养信息查询、饮食记录、营养素统计等功能,学习图表展示和数据可视化

    13. 数据库设计:根据业务需求设计数据库表结构(食物表、营养素表、饮食记录表),合理设计索引和表关系

    14. Web服务集成:实现与后端API的交互,提交用户饮食记录,获取营养素统计信息

    15. 数据可视化:学习使用MPAndroidChart等图表库实现营养摄入量的统计图表展示

    16. 代码规范:学习制定团队代码规范,使用Lint工具检查代码质量

    17. 版本管理:学习Git Flow分支管理策略,掌握代码Review流程

    18. 单元测试:学习编写单元测试(JUnit)和UI测试(Espresso),提高代码质量和稳定性

    19. 项目总结:撰写项目文档(设计文档、使用说明),准备项目展示





如果您想学习本课程,请预约报名
如果没找到合适的课程或有特殊培训需求,请订制培训
除培训外,同时提供相关技术咨询与技术支持服务,有需求请发需求表到邮箱soft@info-soft.cn,或致电4007991916
技术服务需求表点击在线申请

服务特点:
海量专家资源,精准匹配相关行业,相关项目专家,针对实际需求,顾问式咨询,互动式授课,案例教学,小班授课,实际项目演示,快捷高效,省时省力省钱。

专家力量:
中国科学院软件研究所,计算研究所高级研究人员
oracle,微软,vmware,MSC,Ansys,candence,Altium,达索等大型公司高级工程师,项目经理,技术支持专家
中科信软培训中心,资深专家或讲师
大多名牌大学,硕士以上学历,相关技术专业,理论素养丰富
多年实际项目经历,大型项目实战案例,热情,乐于技术分享
针对客户实际需求,案例教学,互动式沟通,学有所获
报名表下载
联系我们 更多>>

咨询电话010-62883247

                4007991916

咨询邮箱:soft@info-soft.cn  

 

  微信咨询

随时听讲课

聚焦技术实践

订制培训 更多>>