智能手机开发课堂笔记(一)
2016年 10月11日 星期一 天气晴
今天上了智能手机开发的第一堂课,对Android系统有了更多地了解。首先老师讲解了一下本门课的学习内容,本课程以Android这一主流嵌入式操作系统为切入点和教学案例,讲述
1、智能手机系统应用UI编程(Android开发环境搭建、Android初级控件的使用、Android高级控件的使用、控件的布局方法、多Acitivity管理)
老师说开发环境搭的好会让接下来对Android系统的学习与实验更加方便,这样也会让我们对Android开发更加感兴趣,所以开发环境一定要搭好!之后学习了一个新的词Activity,用中文翻译过来就是‘’活动‘’,它在这里代表的就是一个活动界面,大多数程序都需要一个或更多的Activities。
2、智能手机系统应用核心组件(四大组件基本的概念以及使用)
活动(activity)、服务(service)、广播(broadcast receiver)内容共享(content provider)
3、智能手机系统应用网络编程与数据存储(基于Android平台的HTTP通讯、Android数据存储技术)
看完这些,我也就大概了解了我们要学习的内容了!真是一点都不多啊0.0!呵呵!
下面就开始了第一章的学习。
第一章 绪论
目录:
1.Android简介 2.Android环境搭建 3. 应用程序目录结 4. 日志工具的使用
首先就是对于Android系统的简介,那么问题来了!我们为什么选择Android开发?现在有那么多种系统,例如ios,blackberry,Windows,Symbian还有其它的一些系统,为什么有那么多系统而我们要学习Android开发呢!因为!它设备便宜啊!其次就是目前Android系统已经占据了绝大多数的市场份额,每年都还在增长!还有很重要的原因就是Android系统是基于linux开发的开源、开放并且是用java来编写程序的地系统。所以,我们选择Android开发!Android系统已经在我们日常生活中无处不在。例如我们平时使用的手机,平板电脑,微波炉,电视,Google眼镜,智能手表,还有一些基于Android系统的软件和游戏等等。Android操作系统最初由AndyRubin创办的公司研发而来,最初主要支持手机。2005年由Google注资收购,并于2007年11月5日正式向外界展示了这款名为Android的操作系统。还了解了android的发展史它们都是以各种甜品命名的,很是吸引人啊。Android系统构架分为Linux内核层、系统运行库层、应用框架层、应用层。Linux内核层:Android系统是基于linux2.6内核的。这一层为Android设备的各种硬件提供了底层的驱动,如显示驱动、音频驱动、照相机驱动、蓝牙驱动、wi_fi驱动、电源管理等。系统运行库层:这一层通过一些C/C++库来为Android系统提供了主要的特性支持。如Sqlite库提供了数据库的支持,openGL/ES库提供了3D绘图支持。Webkit库提供了浏览器内核的支持等。这层还有Android运行时的库,它主要提供了一些核心库,允许使用java来编写android应用。且在库中还包含了一个自己的虚拟机DVM。应用框架层:这一层主要提供了构建应用程序时可能用到的各种API,android自带的一些核心应用就是使用这些API完成的,开发者也可以通过使用这些API来构建自己的应用程序。应用层:所有安装在手机上的应用都属于这一层。包括我们自己开发的应用。Android应用开发的特色:
1、四大组件:
活动(activity)、服务(service)、广播(broadcast receiver)内容共享(content provider)。
2、丰富的控件:
3、SQLite数据库
4、地理位置定位
5、强大的多媒体
6、传感器
接下来就是Android开发环境的搭建了
1、安装jdk(配置环境变量) 打开书5页
2、Eclipse的安装
3、Android sdk 安装包
(特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合)
4、ADT (android development tools)插件
( adt只是一个eclipse的插件,里面可以设置sdk路径)
5、Android模拟器的配置
现在环境的搭建比以前要方便的多,很多工具网上有大神都打包好了,下载解压即可。这个是书中推荐的下载网址:http://www.androiddevtools.cn/ 还有一个作者的百度云盘http://pan.baidu.com/s/1ntLYp5J 按照书上一步一步安装好就行啦。
下面就开始测试环境,编写第一个android程序。下面这些目录一定要记清
src java原代码存放目录
gen 自动生成目录
目录中存放所有由Android开发工具自动生成的文件。目录中最重要的就是R.java文件。 这个文件由Android开发工具自动产生的。Android开发工具会自动根据你放入res目录的资源,同步更新修改R.java文件。正因为R.java文件是由开发工具自动生成的,所以我们应避免手工修改R.java。R.java在应用中起到了字典的作用,它包含了各种资源的id,通过R.java,应用可以很方便地找到对应资源。另外编绎器也会检查R.java列表中的资源是否被使用到,没有被使用到的资源不会编绎进软件中,这样可以减少应用在手机占用的空间。
res 资源(Resource)目录
在这个目录中我们可以存放应用使用到的各种资源,如xml界面文件,图片或数据。具体请看ppt下方备注栏。
libs 支持库目录
程序开发时需要的一些三方的jar包可以放在这个目录,系统会自动把里面的jar包,添加到环境变量。
assets 资源目录
Android除了提供/res目录存放资源文件外,在/assets目录也可以存放资源文件,而且/assets目录下的资源文件不会在R.java自动生成ID,所以读取/assets目录下的文件必须指定文件的路径,如:file:///android_asset/xxx.3gp
AndroidManifest.xml 项目清单文件
这个文件列出了应用程序所提供的功能,以后你开发好的各种组件需要在该文件中进行配置,如果应用使用到了系统内置的应用(如电话服务、互联网服务、短信服务、GPS服务等等),你还需在该文件中声明使用权限。
project.properties 项目环境信息,一般是不需要修改此文件
Android常用调试工具
DDMS+LogCat
Android SDK
DDMS
Android系统中内置的调试工具
监视Android系统中进程、堆栈信息,查看logcat日志,实现端口转发服务和屏幕截图功能,模拟器电话呼叫和SMS短信,以及浏览Android模拟器文件系统等
logcat的功能是由Android的类android.util.Log决定的,在程序中log的使用方法如下所示:
Log.v() ------------------ VERBOSE
Log.d() ------------------ DEBUG
Log.i() ------------------ INFO
Log.w() ------------------ WARN
Log.e() ------------------ ERROR
以上log的级别依次升高,DEBUG信息应当只存在于开发中,INFO, WARN,ERROR这三种log将出现在发布版本中
通过本次学习,让我对Android开发这门课程有了新的认识,搭好了Android开发的环境,并且按照书上的步骤成功安装了Android SDK,也成功编写了第一个Android程序‘’Hello World‘’,这也让我对这门课程产生了兴趣。对于第一堂课的学习,这只是一个开始,还有很多东西需要我们学习。非常重要的一点,就是要把C/C++和Java好好学习一遍,对以后的Android开发会有很大的帮助!!!