开发应用层的需要了解 framework层吗?---不需要!!!!

写于2015年12月3日

不同的android版本,不同的framework实现,framework有近2亿行代码,版本越高,代码行数越大,这个过程是很痛苦的。所以不要去学习和阅读framework的源代码。

阅读它的源代码,还不如去学英语,多看应用层的API,多看理财的书籍。

如果不做framework开发,做app开发的话,看了framework的代码对app开发的帮助是很少的,公司不会因为这个而给你加工资,还不如去学习英语,金融等给自己加薪,和用钱赚钱。

------------

1、首先觉得你的题目和问题描述不太搭边。你所说的复杂功能效果实际上几乎都是应用层的,和framework不搭边。因为如果只是做应用开发,那就完全依赖现成的基础组件和接口,最多自定义一下组件和布局。你在网上找到的很流畅很美观的现成组件都是别人自定义之后封装的。别人能做,实际上你应该也能做。多看看别人的demo,试着对你不满意的地方做点改进,总会有收获。一旦觉得有点心得,记录下来或者把你封装的东西拿出来让大家用用,一起讨论讨论,必然收获更多。

2、关于framework,更多是做的应用层之下的系统层面的东西。比如电源管理、消息队列、包管理等等,还包括对硬件的支持及系统提供给上层的硬件功能调用接口。framework的学习必然离不开不断编译rom和刷机。这就要求有耐心有时间有兴趣。而且由于framework层多数模块都是以JNI方式被调用的,因此你需要有比较扎实的C语言基础,之少能看懂程序结构。除此之外,对你想要详细研读的模块在应用层的应用需要有必要的理解。我刚开始看源码的时候是从电源管理模块开始看的,就是因为当时对android系统自带的电源提醒方式以及电量通知不太满意,想重新定义更多层级的提醒。刚开始也是一头雾水,但还是硬着头皮一点点啃。这个过程中,为了防止忘记之前看过什么,所以又不断对看过的源码做注释并做阅读笔记。大概两三个月,虽然了解的也比较浅显,但是我的目的达到了。源码之路漫漫,看个三五年都不一定敢说能够整体吃透。虽如此,但只要有钻研的方向和基本的能力,相信工作中遇到的framework层的改动应当还是能够负担得住的。

3、如果不想深入framework,其实你也可以做android系统应用的开发。这一步几乎和上层应用开发差不多,不过可以调用的库更丰富,权限更高罢了。这个可以自己研究,参照android系统出场自带的应用。

说了这些。希望能够有点帮助。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/537377.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

51CTO会员开通成功!开森!

很好,是理想中的学习平台,果断买了!^_^ 开森ing 转载于:https://blog.51cto.com/13601545/2324935

一个请求多个响应_一个TCP连接到底可以发多少个HTTP请求?

曾经有这么一道面试题:从 URL 在浏览器被被输入到页面展现的过程中发生了什么?相信大多数准备过的同学都能回答出来,但是如果继续问:收到的 HTML 如果包含几十个图片标签,这些图片是以什么方式、什么顺序、建立了多少连…

手机定位功能为什么打开WiFi(不连接) 就会非常的准 ?如果WiFi 迁到其它地方去了呢?

Wifi定位地图在需要定位的时候,一般会优先用GPS的定位结果,一般来说GPS最准。如果没有GPS的定位结果的话,那一般就退而求其次用Wifi的定位结果。 原理是这样的: 1、手机收集它能够搜索到的Wifi的信息; 2、提交Wifi信…

JxBrowser概述与简单应用

Q:JxBrowser是什么? JxBrowser是一个跨平台的Java库,允许将基于Google Chromium的Web浏览器组件集成到Java Swing / AWT / JavaFX应用程序中。使用JxBrowser,您可以将轻量级Swing / JavaFX组件嵌入到Java应用程序中,以…

我的达内Java培训经历

我当时2009年参加达内培训是在学校里,达内与我们学校合作。当时培训班只开了一个班,有位班主任,因为是第一届,学生也少,不到20个,所以不是老师现场教的,看视频学习的,视频是录播的。班主任负责培训班日常管理工作,和技术答疑。培训视频是投影仪放。当时培训java基础的…

小米大数据:借助Apache Kylin打造高效、易用的一站式OLAP解决方案

如今的小米不仅是一家手机公司,更是一家大数据与人工智能公司。随着小米公司各项业务的快速发展,数据中的商业价值也愈发突显。而与此同时,各业务团队在数据查询、分析等方面的压力同样正在剧增。因此,为帮助公司各业务线解决这些…

旧电脑升级Win11

2014年的联想Y430P升级成功 升级很简单 第一步:下载win11系统安装包,下载地址:系统之家 - Win11系统 第二步:下载KMS激活工具,下载地址:https://www.jb51.net/softs/668522.htmlhttps://www.jb51.net/sof…

进程池的用法

apply() 函数原型: apply(func[, args()[, kwds{}]]) 该函数用于传递不定参数,主进程会被阻塞直到函数执行结束(不建议使用,并且3.x以后不在出现)。 apply_async() 函数原型: apply_async(func[, args()[, …

巧删无法删除的文件

遇到无法删除的文件,电脑上没有文件粉碎工具,或文件粉碎工具也删不掉,怎么办? 很简单: 把文件的后缀名改掉,比如改成doc,重启电脑,再删除

万用表测线路断点位置_如何测出电线电缆断点在哪?来看看常见的7种方法

实际工程维护检修中,对于维修人员来说最怕的莫过于碰到电线电缆中间断了找不出断点在什么地方。虽然我们弱电工程实际维修的时候,碰到线缆问题会直接想办法换线或者重新敷设,但是我们今天讨论技术上有哪些方法可以测出线缆的断点!…

12.04个人博客

地点:自习室 事件:召开小组会议,进项任务分配转载于:https://www.cnblogs.com/qingjia/p/10145891.html

你真的会用OneNote吗?

你真的会用OneNote吗?_程序媛一枚-CSDN博客前言特色功能图片转文字TAB制表符新建表格表格嵌套自动编号保存微信文稿树形目录基本功能总结前言使用OneNote做笔记已经有一年多的时间了,从最开始的抵触,到现在的习惯,心态的转变主要是…

乐学python_铁乐学python_day01-作业

第一题:使用while循环输入 1 2 3 4 5 6 8 9 10# 使用while循环输入 1 2 3 4 5 6 8 9 10count 0while (True) :count count 1#判断当count等于7的时候,返回循环最初,不执行下面的打印等语句if count 7:continueprint (count)#判断当count等…

大道至简: 拉新、促活和留存

互联网运营中的拉新、促活和留存思维,从来不局限于互联网产品里,在传统行业里也是通用的,比如一家理发店的经营也是如此。 互联网运营中的拉新、促活和留存思维,从来不局限于互联网产品里,在传统行业里也是通用的。比如…

python3的pyqt5 qtablewidget按数据大小排列_InnoDB为什么要选择B+树来存储数据?

关于InnoDB索引,我们可能知道InnDB索引是用B树实现的,而B树就是一种能优化查询速度的数据结构。但我们又没想过这样一个问题,能优化查询速度的数据结构有很多,为什么InnoDB要采用B树?常见优化查询速度数据结构哈希表哈…

数据仓如何支撑应用?

数据仓支撑应用,主要有以下步骤: 1.应用部门:在“宁波市公共数据目录平台”按需申请省市共享数据,申请的表审批通过后,提交《审批通过的表清单》给大数据中心; 2.大数据中心:比对《审批通过的…

辛苦俩月总结的面试题,掌握它怼翻面试官不是梦~

小编经过一个多月的不懈努力,给大家总结了一份面试方面的题目。这份面试题涉及高并发、分布式、高可用相关知识点,在此分享给大家,希望大家能拿到一份理想的 Offer!因为是笔试题目,大家可以先做。如果需要查看答案&…

python坐标转化极坐标_python 坐标系

广告关闭提供包括云服务器,云数据库在内的50款云计算产品。打造一站式的云产品试用服务,助力开发者和企业零门槛上云。写在前面的话01 今天资源君带大家学习一下python的可视化,何谓可视化呢? 我们常常听说python的数据分析&#…

百家号 不被推荐,原因:将旧闻冒充新闻发布,请修改后重新发布

1.情景展示 在百家号进行创作的作者,发布文章时,难免会遇到审核不通过,下面说一下其中一种情况: 不被推荐,原因:将旧闻冒充新闻发布,请修改后重新发布. 2.解决方案 出现这种情况,原…