作为一名大三的学生,之前简单地接触过android,但不是特别深入,随着时间的推移,发现自己也对android很感兴趣。之前也看过很多大牛们在这里写博客,昨天自己突发奇想,将自己的知识点以博客的形式进行整理和分享,欢迎大家进行批评。同时,也希望在CSDN中看博客的小白可以跟着我一起学习,共同进步。
谷歌已经使用了Kotlin来替代Java作为安卓开发的第一语言。但是由于我之前就是学java出来的,在这里还是使用java进行对安卓的学习。(kotlin对java百分百兼容,所以我认为两者并没有太大的区别)那么,接下来,就要进入今天的第一次的android内容了。
在前期的学习当中呢,我使用的ec对安卓进行编译(由于电脑比较卡,可能使用as会崩掉),所以还请谅解(不过渡过前期的学习后,我应该也会去体验一下as的强大之处)。
第一个问题,什么是安卓?
我这里给出的答案相当简单啦: 基于Linux的开源手机操作系统。
是不是感觉短小精悍!如果非要再加一句的话,应该是:谷歌造的, 基于Linux的开源手机操作系统。ok,不要去纠结于概念问题,让我们往下走。
第二个问题,安卓的体系架构。
(这个我在网上也看到过很多,但是还没有记住,很多人说这里可能是一道面试题,对于还没有找工作的我来说,我就暂且相信了吧)下面看一张图片,学安卓的人肯定都会在前期看到过这张图片啦!
是不是感觉很眼熟呢,那么接下来我就用大家最讨厌的概念性的文本对其进行一定字数的描述(从下往上):
I.Linux内核层(提供作为电子设备最最基本的功能,比如电源的管理,蓝牙驱动,wifi驱动...)
II.程序库 程序库里面的东西很多都是c或者c++写的,集成了很多第三方的优秀的库
运行时 ---核心库(包含对java的支撑)
---虚拟机(Dalvik) 不能直接运行class文件,必须通过dx的工具,将class文件打包成以.dex为后缀的文件再执行
---Android4.4开始 ART模式 是Android Runtime的简称。
Dalvik和ART区别?
Dalvik:在执行的时候编译再运行 安装比较快,开启应用时就比较慢,应用占用的空间小
ART:在安装的时候就编译好 ,执行的时候就直接运行 安装时候比较慢,开启应用时快,占用的空间大
III.应用框架层 提供给应用程序编程接口
IV.应用程 包含系统自带的应用以及我们自己开发的应用
第三个问题, Android的第一个程序——HelloWorld
(对于安卓环境的搭建什么的,大家直接可以百度一下啦,我也是百度配出来的,在这里怕自己的理解误导了大家,但是一定要动起手来哦,自己去配置了才行,否则Android程序是跑不起来的)
首先打开EC,新建一个安卓工程。名字起的话,就叫HelloWorld吧,大家对名字命名法应该都很了解了吧,一般来说,都是使用驼峰命名法。(具体什么名字我忘了,周围的人都这样叫,我也这样叫了)
在res—>layout文件夹下,可以看到一个main.xml文件,里面有一个TextView。将它的属性android:text的值改为:android:text="Hello World!"。之后,启动模拟器,运行程序,你将在模拟器的界面上看到Hello world!
在这里呢,强调一下Android中的不经常用的知识:
1.ADB命令
ADB:Android Debug Bridge 安卓调试桥
adb devices:查询当前连接到电脑的设备
adb push:上传文件到设备
adb pull:从设备上取文件下来
adb install xxx.apk:安装一个应用程序
adb uninstall 包名(应用程序的唯一标识) :卸载一个应用程序
adb kill-server:关闭设备与电脑之间socket连接
adb start-server:打开socket连接
adb logcat:查看设备上的日志
2.Android碎片化问题?
a.版本碎片化
兼容主流设备(Android4.0 API15以上的设备)
b.屏幕碎片化
适配兼容主流设备
那我第一次的博客内容也就写完了,可能忽略了很多东西,我只是把需要掌握的知识点写了一下,第一次整理知识点,有很多不足的地方,望大家予以批评,谢谢啦~