1. JAVA基础
市面上绝大部分的安卓软件都是使用Java进行开发的,一个Android开发开发工程师必须具备扎实的java基础。而且Java不止在前期学习中占据重要地位,不少安卓大牛在开发了很多款APP之后,安卓开发中从不脱离Java和Java里常用的模式,要开始Android开发,你至少需要知道以下Java的知识。
△ 面向对象
△ 线程和同步
△ 常见I/O
△ 简单的设计模式
2. Android四大组件
应用组件是一个Android应用程序的重要基石。每一个组件都作为一个独立的实体存在,起着特定的作用。Adnroid中有四种不同类型的应用组件。每种类型提供不同的用途,并各自拥有不同的生命周期。
Android有四大组件:Activity、Service、Broadcast Receiver、Content Provider:
△ Activity (具备控件、菜单等界面元素,管理生命周期、跳转逻辑)
△ Service(绑定、非绑定、混合绑定,提供同步和异步的接口)
△ Broadcast Receiver(普通、有序广播,生命周期)
△ Content Provider(音频、视频、图片、通讯录等)
3. Android界面开发方法
安卓开发工程师需要有学习组件开发、搭建一个工程的思想,在这个阶段会接触到各种各样的控件,工程师利用控件制作许多效果。开发一个交互水平高、适配性强的APP需要Android开发工程师对界面开发有深刻的了解。
△ 各种基本控件,ImageView / TextView重点掌握
△ 界面布局(帧布局、相对布局、线性布局、约束布局),灵活使用
△ Fragment
△ 控件,ListView/ViewPager及Adapter
△ Bitmap使用,各种Drawable使用
△ 使用基本的视图和属性动画
4. Android开发优化
代码体量变得日趋臃肿,视图层级越来越深,工程结构也越来越复杂。相应的,输出的apk包越来越大,界面流畅性大不如前,经常性发生卡顿,甚至不时出现内存溢出崩溃。在这个阶段,Android开发需要掌握以下方面的技术。
△ AndroidStudio的使用(包括调试工具,测试工具,快捷键等)
△ Android资源管理
△ Android视图架构(Activity视图层级、layout inflate)
△ UI性能检测
△ 内存优化、电量优化、代码优化
△ 网络调试
△ 流量优化
△ NDK JNI开发
5. Android线程模型
打开一个手机应用,展示给用户的是应用的界面,手机的界面是数据的一种呈现方式,当用户和界面产生交互时,又会产生新的数据。
一个应用,本质上是数据的生产,数据的消费和数据的流转。数据的读写、数据的存储、数据的交换需要掌握哪些技能?
△ SP存储、Sqlite、ContentProvider使用
△ Java线程、线程池
△ Handler/AsyncTask/Loader
△ Service
△ OkHttp
这些都是成为Android开发工程师需要具备的技能,你get到了吗?