《第一行代码》学习笔记一
第一章 开始启程——你的第一行代码
Android的由来
安卓之父:安迪·鲁宾(Andy Rubin)
2003年10月,安迪·鲁宾牵头创建了一家公司,名为Android,开始开发一款针对手机端的操作系统。
2005年8月谷歌低调收购了这家公司及其团队,安迪鲁宾成为Google公司工程部副总裁,继续负责Android项目。
2007年11月,谷歌公司正式向外界展示了这款名为Android的操作系统,并宣布建立一个全球性的联盟组织,该组织由34家手机制造商、软件开发商、电信运营商以及芯片制造商共同组成,他们共同搭建起了Android系统最早的生态圈。2011年,Android在全球的市场份额首次超过塞班系统,跃居第一,目前的主要竞争对手是ios。
Google为什么要开源Android?
网上说:“比尔盖茨靠着windows成为世界首富,诺基亚靠着塞班统治手机市场,苹果一半以上的收入都是来自于ios,为什么谷歌要把安卓开源呢?垄断的话是何等的暴利?”
所以为什么谷歌要开源Android,这背后的原由我们也窥探不来。我在百度上找到一个回答,贴出来看看:
知道apple store 吧,谷歌也有个类似的好像叫 android store ,是专门让开发者发布软件的。开发者需要注册才能发布软件,注册金额好像是5美元。开发者发布的软件,也可以付款下载,或者让你免费下载,但是软件的服务要收费。这样就算开发者 和 谷歌共赢了。至于楼上说的,卖开源代码那就更扯了,都说是开源了,还怎么卖。我都可以下载android的源码。说和三星利润分红也不对,你知道android没有出现以前塞班是何等的火,但塞班是不开源的。一个新的操作系统想要夺取一个霸主的低位,他只有开源,免费。所以android一出来,谷歌就组成了手机开放联盟,下至各种硬件制造商,上至手机制造商,几乎联合了所有手机厂商,除了诺基亚外。所以许多手机都用android系统,然后android不断壮大。当然android系统的成功不仅因为他的开源免费,它本身也是非常优秀的。而谷歌的组成开放手机联盟的策略,更加速了android系统的成功。
而且谷歌赚钱主要还是靠他的搜索引擎的,至于android系统android store 的钱都是小钱。谷歌根本不在乎,但谷歌受够了摩托罗拉,也让众多手机厂商提心呐。。。
就说到这,说的有点乱,总之赚钱的地方应该是android store,而不是利润分红,或者卖代码。
百度地址:https://zhidao.baidu.com/question/474713838.html
Android的系统架构(四层)
1、Linux内核层
这一层为Android设备的各种硬件提供了底层驱动,如显示驱动、音频驱动。
2、系统运行库层
这一层通过一些C/C++库来为Android系统提供了主要的特性支持,如SQLite库提供了数据库的支持。
3、应用框架层
这一层主要提供构建应用程序时可能用到的各种API。
4、应用层
所有安装在手机上的应用程序。
Android四大组件
- 活动Activity
- 服务Service
- 广播接收器Broadcast Receiver
- 内容提供器Content Provider
关于注册文件
当运行我们的Android应用程序时,Android操作系统首先会去找我们的AndroidManifest.xml这个文件,这个文件是我们应用程序的主配置文件,因为我们一个应用可能有多个的Activity,那我们首先会展示哪个Activity呢?这个主配置文件就定义了当前这个应用默认所加载的那个Activity对象,找到这个Activity对象后,就会调用其onCreate()方法,这个方法主要就是用来加载我们的布局文件的,通过 setContentView()方法可以来加载我们指定的布局文件,最后根据布局文件中的各个控件显示在我们的屏幕上。这个就是Activity的启动流程。
如何使用res文件夹下的资源
有两种方法:
- 在代码中 R.string.app_name
- 在XML中@string/app_name
关于logcat
Log.v、Log.d、Log.i、Log.w、Log.e分别对应
verbose最低等级
debug
info
warn
error