Android环境搭建
写在前面的话:虽然开通博客已经很久了,但是始终没有时间来整理和总结心得,今天终于忙里抽闲的把自己近一个月完成的多个APP原型做了整理。这次更新可能要持续几天,但是会包含所有的源码,并且会有我对其中的关键技术的讲解,小女子也是菜鸟一枚,希望通过博客和大家一起进步,希望大神们轻拍。
1、Android系统简介
Android,中文俗称安卓,是一个以Linux为基础的开放源代码移动设备操作系统,主要是应用于智能手机和平板电脑之上,目前仍然由Google成立的Open HandsetAlliance持续领导与开发。Android系统最初由安迪·鲁宾(Andy Rubin)等人开发制作,开发的最初目的是创建一个数码相机的先进操作系统,但因智能手机市场快速成长,于是Android被改造为一款面向智能手机和平板的操作系统。2007年,Google以Apache免费开放源代码许可证的授权方式,发布了Android的源代码,让生产商推出了搭载Android系统的智能手机,Android操作系统后来更逐渐拓展到平板电脑及其他领域上。2010年末数据显示,仅正式推出两年的Android操作系统在市场占有率上已经超越称霸逾十年的诺基亚Symbian系统,成为全球第一大智能手机操作系统。
图1 Android基础架构
如图1所示,Android操作系统的核心属于Linux内核的一个分支,作为硬件抽象层介于手机物理硬件和软件栈之间,具有典型的Linux调度和功能功能。除此之外,Google为了能让Linux在移动设备上良好的运行,对其进行了修改和扩充。Android去除了Linux中的本地X Window System,也不支持标准的GNU库,这使得Linux平台上的应用程序移植到Android平台上变得困难,但是Linux却更好的适配了Android的特性。标准库中包含一些开发者在开源环境中直接可以使用的库文件。Android app framework主要包含了对于活动、资源、Widget,视图的管理,并包含多种数据存储形式(ContentProvider、SharedPreferrence)。
Android系统使用Java作编程语言,在设计应用的过程中,Java语言帮助用户设计完备的界面和功能。
2、Android开发环境搭建
1) 在下述地址中下载合适版本的JDK或者JRE,并安装在本地:http://www.oracle.com/technetwork/java/javase/downloads/index.html
2) 将adt_bundle-windows-x86-20131030.zip 解压到任意盘符的任意目录下,注意目录名称最好为英文。里面包含eclipse、sdk两个文件夹和SDKManager;
3) 配置环境变量(假设jdk解压安装在C:Javajdk1.6.0_16和C:Javajre6;adt_bundle-windows-x86-20131030.zip解压在C:Javaadt-bundle-windows-x86-20131030),桌面->计算机->右键属性->高级系统设置->高级->环境变量->adminstrator的用户变量,新建变量,如果变量存在,选中编辑变量,注意需要用“;”(英文分号)隔开变量:
变量名:JAVA_HOME
变量值:C:Javajdk1.6.0_16;
变量名:ANDROID_SDK
变量值:C:Java;
变量名:Path
变量值:.;%JAVA_HOME%bin;C:Javaadt-bundle-windows-x86-20131030sdktools;C:Javaadt-bundle-windows-x86-20131030sdkplatform-tools;(注意前面的.号)
变量名:CLASSPATH
变量值:.;%JAVA_HOME%libtools.jar;%JAVA_HOME%libdt.jar;%JAVA_HOME%lib;(注意前面的.号)
4) 测试环境变量,Windows开始->运行->cmd,输入java或者javac测试命令看成功与否;
5) 运行eclipse,进行相关的sdk更新,点击SDKManager。
更新如上图android4.4 (API19)的选中项。
6) 配置Android模拟器,如图打开AVD管理器,配置参数如下
点击OK完成。
7) 选中创建好的android4.4模拟器,点击start,运行模拟器。
8) 如何真机调试:设置手机为USB调试模式,手机通过USB连接电脑,安装手机驱动后,打开Eclipse,打开Windows开始->运行->cmd,输入adb devices测试命令检测手机设备是否已经被识别。
上图检测识别到设备ce55398d,也就是我的手机唯一识别码啦。
上图无设备连接,再次检查手机驱动的安装和USB调试功能是否被打开。
3、创建第一个安卓程序:
1) 项目名称Exp1Helloworld。
点击Next,可修改workspace路径、ActivityName等。
完成创建,选择Finish。
2) 模拟器调试运行:
右击android工程->Runas->Android Application
控制台提示:
模拟器运行后效果:
10、真机器调试
右击android工程->Runas->Run configurations,按照如下配置。
配置完成,选择Run,找到自己的手机,选择真机,点击Ok,就能在手机端测试。
就这么轻松的搞定了安装,妹子我真的是不敢相信呢!!
4、思考题
工程做完了,但是让我来看看这么多的文件夹下面都是什么东西吧。
Android项目下的src—>com.example.exp1helloworld-->HelloWorld.java文件,这个文件是整个工程程序的入口。
publicclass HelloWorldextends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_hello_world);
}
}
HelloWorld类扩展了Activity,重写了oncreat方法。在Android中,可视化组建称为View,类似于传统桌面应用程序开发中的控件。通过setContentView方法,使用res-->layout-->activity_hello_world.xml这个布局资源,对用户界面进行布局。
res-->layout-->activity_hello_world.xml 第一个Activity的布局文件,主要用于放置一些控件,比如如果要添加一段文字的显示,可以通过创建一个TextView标签,如果是按钮,就要添加Button标签,依然不明白,那我就更详细的来用代码说话,我们来添加一个按钮和编辑框。而res文件夹下面的所有文件都是这种资源,或是定义一个字符串来代替中文,或是添加图片进来用于显示,或是可以放一段音乐作为背景音乐引用。
<TextView
android:id="@+id/textview1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world"/>
<EditText
android:id="@+id/edittext1"
android:layout_width="wrap_content"
android:layout_below="@id/textview1"
android:layout_height="wrap_content"
android:hint="在此处编辑"/>
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/edittext1"
android:text="按钮"/>
还有一个比较重要的文件叫做Manifest.xml,目前我接触到的它可以用来控制Intent的过滤,可以构造出多个显式的intent;可以打开手机硬件权限,提供给软件支持;可以完成Activity的注册。(随时补充,欢迎更正)这里贴出一些节点,并作简单解释。
<action> 用于意图过滤器中,给活动起一个名字
<activity> 注册一个活动
<activity-alias>
<application>应用程序本身的元素
<category>
<data>
<grant-uri-permission>
<instrumentation>
<intent-filter> 创建意图过滤器
<manifest> 主节点
<meta-data>
<permission>
<permission-group>
<permission-tree>
<provider> 内容提供商
<receiver>广播接收机
<service> 注册一个服务
<supports-screens>
<uses-configuration>
<uses-feature>
<uses-library>
<uses-permission> 提供给哪些硬件支持
<uses-sdk>确定sdk版本
今天内容就到这里了,本来只是想写写安装过程,没想到写着写着手就一秃噜的写下来了。