【Android N_启示录】
【啰嗦~】自从接触Android以来,大概也有3年时间,基本是跟着项目走,做过的东西不算多也不算少,从当初做上层应用到系统级应用,再到Framework,以及后来接触功耗、性能优化等需求。给我的感觉就是学的东西杂而很难精益求精,我想有必要写点东西,把自己认可的干货或学习心得做个记录,一来以备查询,挽救我这令人心伤的破记忆,二来也可以跟Android相关开发/爱好者共同交流,取长补短,提升自我!有不足之处也请各种践踏,给予批评指正!
---------------------------------------------------------------------------------------------------------------------------------------
从今天开始,对于Android N的源码分析,主要来源于以下三方面的资源:
1、个人项目中所做模块的经验分享
由于目前接触的项目几乎都是建立在Android 5.1和6.0上的,所以与N对比,源码还是出现了很大的改动,从17开始,整机开发的Android系统应该都会是基于7.0以上。目前很多模块对于源码的分析参差不齐,而且很多都大同小异。
基于6.0源码分析的尚且甚少,基于7.0的更少,过旧的源码框架和变更的函数及接口不太适合新手或模块新人去跟踪源码并学习分析,所以后面写的每一篇源码都会基于7.0的版本。(PS:当然Android O也快出来了,有新特性还是会一起分析分享)
这个专区主要的模块应该会集中在系统层面,所分析的源码集中于Framework/下,当然也会涉及到一些其他目录下的源码(只能说,水太深),我会尽量写的基础,写的全面,让你知道去哪找,能够读懂上下文!
2、除项目以外,个人兴趣模块学习经验分享
相信大家除了工作上迫不得已被逼迫的搞一些自己不愿意的模块以外,还是想研究一些自己感兴趣的东西,比如我一直被压迫搞基础框架(AMS、PMS...),其实我想搞网络基础协议(Wifi),比如我被逼迫搞三方兼容性问题(其实就是一个扯淡的工作,很少有改动代码的工作量),其实我想写几行代码!再比如...
由于大部分的经验都集中在框架层,不严格的来说是Android中间层,还是对上层应用组件比较感兴趣的,毕竟也想去研究学习~
对于应用这一块还是新手,希望能够从系统转应用的过程中,尽量多的学习,跟大家多多交流,欢迎打脸!
3、Linux相关的知识点总结和经验分享
我始终坚信想搞好Android,对于Linux的基础掌握是必须的,如果能够很好的了解Linux系统的相关知识(当然能够深入一点是最好的),对于Android的编译和底层(包括JVM)等的学习和掌握还是相当好的!这其中会包含git、shell等知识点的学习!
对于Linux的学习,我也会以专题的形式,写一些干货,与大家一起交流学习!再次鼓励打脸!
---------------------------------------------------------------------------------------------------------------------------------------
【再啰嗦~】以上为个人今后技术总结的蓝图雏形,定个大概方向,后面就慢慢的强化细节吧。总的来说,梦想是好的,能不能坚持下去,还是个问题,不过梦想还是要有的,万一实现了呢?
【Android N_启示录】的更多相关文章
- Android启示录——开始Android旅途
为了明年可以开始进行android程序开发,开始从零开始学习android,仅以此代表第一步开始(*^_^*),开始搭建环境…… 1. 软件下载 http://developer.android.co ...
- Android启动篇 — init原理(一)
======================================================== ================================== ...
- Android 7.0 启动篇 — init原理(一)(转 Android 9.0 分析)
======================================================== ================================== ...
- Android网络编程(一)HTTP协议原理
相关文章 Android网络编程(一)HTTP协议原理 Android网络编程(二)HttpClient与HttpURLConnection Android网络编程(三)Volley使用方法全解析 A ...
- 【原】Android热更新开源项目Tinker源码解析系列之三:so热更新
本系列将从以下三个方面对Tinker进行源码解析: Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Android热更新开源项目Tinker源码解析系列之二:资源文件热更新 A ...
- 配置android sdk 环境
1:下载adnroid sdk安装包 官方下载地址无法打开,没有vpn,使用下面这个地址下载,地址:http://www.android-studio.org/
- Android SwipeRefreshLayout 下拉刷新——Hi_博客 Android App 开发笔记
以前写下拉刷新 感觉好费劲,要判断ListView是否滚到顶部,还要加载头布局,还要控制 头布局的状态,等等一大堆.感觉麻烦死了.今天学习了SwipeRefreshLayout 的用法,来分享一下,有 ...
- Android Studio配置 AndroidAnnotations——Hi_博客 Android App 开发笔记
以前用Eclicps 用习惯了现在 想学学 用Android Studio 两天的钻研终于 在我电脑上装了一个Android Studio 并完成了AndroidAnnotations 的配置. An ...
- Android请求网络共通类——Hi_博客 Android App 开发笔记
今天 ,来分享一下 ,一个博客App的开发过程,以前也没开发过这种类型App 的经验,求大神们轻点喷. 首先我们要创建一个Andriod 项目 因为要从网络请求数据所以我们先来一个请求网络的共通类. ...
随机推荐
- PHP学习路线图
文章转载自「开发者圆桌」一个关于开发者入门.进阶.踩坑的微信公众号 这里整理的PHP学习路线图包含初中高三个部分,你可以通过百度云盘下载观看对应的视频 链接: http://pan.baidu.com ...
- beauty
至你我最美的邂逅 年意渐渐消失,一转眼元宵的炮竹将要响起,今天是贰零一七年二月九号,即是元宵节前两天,在这里我写下我这几天的收获. 离元宵节还有四天,我好久都没跟朋友一起认真的玩过,几天我去了我发小的 ...
- React组件开发(一)初识React
*React不属于MVC.MVVM,只是单纯的V层. *React核心是组件(提高代码复用率.降低测试难度.代码复杂度). *自动dom操作,状态对应内容. *React核心js文件:react.js ...
- (十) Jquery的基本使用
一.引入 注意:如果在index.js中有使用到JQuery.js 那么JQuery.js文件必须比index.js文件先引入,否则index.js文件中不能使用JQuery.js. <scri ...
- 1753: [Usaco2005 qua]Who's in the Middle
1753: [Usaco2005 qua]Who's in the Middle Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 290 Solved: ...
- <<C++ Primer>> 第四版Exercise Section 8.4.1 练习题
For exercise 8.6 // ConsoleApplication10.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #incl ...
- aiohttp之添加静态资源路径
所谓静态资源,是指图片.js.css等文件.官方的说明在这里. 以一个小项目来说明,下面是项目的目录结构: . ├── static │ ├── css │ │ ├── base.css │ │ ├─ ...
- JavaWeb之Listener监听器
监听在Java体系中运用的很广泛,在安卓开发.JavaWeb开发中到处存在,在其他语言也有类似的,如果有了解过设计模式那很容易理解实现的原理.不过对于开发者来说,使用观察者模式只需实现相应的接口就好, ...
- mybatis基础学习1---(配置文件和sql语句)
1:配置文件(主要配置文件) 2:配置文件(引入) 3:sql语句解析: <mapper namespace="/"> <!-- 1 -->根据id查对象 ...
- Java语言定义的线程状态分析
说到线程,一定要谈到线程状态,不同的状态说明线程正处于不同的工作机制下,不同的工作机制下某些动作可能对线程产生不同的影响. Java语言定义了6中状态,而同一时刻,线程有且仅有其中的一种状态.要获取J ...