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