Android实战知识点整理

1.框架

MVP

2.优秀开源库

(1)异步处理: RxJava/RxAndroid

(2)网络通信: Retrofit2,OKHttp,可直接在Retrofit中使用Okhttp作为网络通信层,谁让它们是一家公司做的呢。

(3)总线通信:EventBus,现在推荐RxBus 复用Rxjava,少使用一个开源库

(4)图片加载: 大量图片和大图片用Fresso,一般图片用Picasso/Glide。Glide是在Picasso上面修改的。一般使用Pacasso和Glide就够用,Fresso虽然功能强大,但是包的大小也大一些

(5)json处理:Gson 完美支持Retrofit2

(6)依赖注入:dagger2

(7)文件io:okio 文件IO操作利器,若有大量此类操作可使用

(8)数据库:GreenDao ORM框架

(9)内存泄漏:LeakCanary 简洁明了的内存泄漏包

(10)日志 Logger

(11)懒人库:ButterKnife,如果不想写findViewBy,可以用用

3.Android官方组件(优化的第三方库及自定义自行google和baidu)

(1)列表处理:RecycleView

(2)延迟加载:ViewStub

(3)侧滑菜单:DrawLayout,NavigationView

(4)下拉刷新:SwipeRefreshLayout

(5)顶部菜单栏:Toolbar

(6)左右滑动的tab:Tablayout + ViewPager

(7)底部导航栏:FragmentTabHost,或者ButtomNavigationBar

4. 使用的很重要但是不多的类

(1)定时任务:AlarmManager

(2)倒计时类:CountDownTimer

(3)简单数据存储:SharePreferences

5.其他Android知识

(1)权限验证,在Android 6.0及以上 Android 6.0 运行时权限处理完全解析

(2)key store的App签名 Android开发之生成自己的签名文件及App签名打包

(3)多线程以及异步处理

(4)minSdk,targetsdk,compileVersion,buildVersion

(5)相机 camera2(>5.0)

(6)打包混淆

(7)Android第三方登录和自动登录 app登录浅析 自动登录

(8)图片相关 Image asset,SVG,webpp,以及bitmap的oom

(9)webView深度定制,js和原生的交互

(10)NDK开发,cmake

(11)设备旋转,Activity和Fragment用OnsaveInstanceState(bundle)解决,而音频视频等播放的旋转要使用retainInstance

(12)推送机制,第三方/自己实现

(13)React Native/小微信程序

(14)热补丁技术

(15)android单元测试和自动化测试

没有链接的请自行google或baidu

你可能感兴趣的:(Android实战知识点整理)