Android_4.4环境搭建及程序结构

1.2.1  Android SDK下载与安装

学习开发Android应用程序,需要下载安装Android SDK。在Android的官方网站的二级域名http://developer.android.com/index.html中,可以下载到完整版本的Android SDK,也可以下载到包含开发工具(带ADT插件的Eclipse)的最新版本的Android SDK。在下面将详细介绍包含开发工具的最新版本的Android SDK下载与安装的步骤。

&  说明:在完整版本的AndroidSDK中,包含了模拟器、教程、API文档、示例代码等内容。掌握了基础知识之后,进行实际项目开发时,建议下载完整版本的Android SDK,这样可以方便查询API文档,及时解决遇到的问题。

(1)打开浏览器,进入Android开发者官方主页,地址是“http://developer.android.com/index.html”。如图1.19所示。

                                            


                                                                                                      图1.19  Android开发者主页

(2)在该页面中,以幻灯片形式显示出Android 4.4操作系统的相关信息及应用,单击网页下方的Get the SDK超链接,将进入到Android SDK下载页面,如图1.20所示。

                                          

                                                                                               图1.20  Android SDK下载页面

(3)在该页面中默认提供了Windows平台下的Android SDK下载按钮。单击Download the SDK ADT Bundlefor windows按钮,将进入到如图1.21所示的页面。

                                          

                                                                                               图1.21  Android SDK下载页面

(4)选中图1.15所示的复选框和单选按钮后,下面的Download the SDK ADTBundle for windows按钮将变为可用按钮,单击该按钮,将弹出如图1.22所示的下载对话框,单击“保存”按钮,将下载后的文件保存到本地硬盘的任意位置即可。(http://blog.csdn.net/gyming/article/details/8168166)

                                                                        

                                                                                                 图1.22  “文件下载”对话框

(5)文件下载完成后,将得到一个名称为adt-bundle-windows-x86-20140321.zip的压缩文件,将该文件解压缩到自己喜欢的位置(例如,将其解压缩到F盘根目录),将得到如图1.23所示内容。

                                        

                                                                                           图1.23  解压后的目录结构

 注意:开始启动Eclipse之前,请确保您的电脑已经成功安装并配置了JDK。

(6)打开eclipse文件夹,并且双击其中的eclipse.exe文件,将启动用于进行Android项目开发的Eclipse,该Eclipse中已经包含了开发Android项目所必须的ADT插件。启动Eclipse,将弹出设置工作空间对话框,在该对话框中指定工作空间的位置,如图1.24所示,单击OK按钮,将进入到Eclipse的工作台,默认将显示一个欢迎页,关闭该欢迎页,将显示如图1.25所示的工作台界面。

                                                                      

                                                                                                           图1.24  设置工作空间

                                       

                                                                                          图1.25  Eclipse的工作台界面


  说明:首次运行Eclipse将弹出Contribute usage Statistics对话框,询问是否发送习惯用法统计表到Google,如果不发布,选中“No”单选按钮,然后单击Finish按钮。

1.2.2  配置AVD模拟器

AVD(Android Virtual Device)即Android模拟器,它是Android官方提供的一个可以运行Android程序的虚拟机,在运行Android程序之前,首先需要创建AVD模拟器。创建AVD模拟器的步骤如下:

(1)单击Eclipse工具栏上图标(AVDM),显示AVD管理工具对话框,如图1.33所示。

                                                  

                                                                                        图1.33  AVD管理工具对话框

(16)在图1.33中,单击“New...”按钮,将弹出“Create new Android VirtualDevice(AVD)”对话框,如图1.34所示,在该对话框中,首先输入要创建的AVD名称,并选择AVD模拟器版本;然后设置SD卡的内存大小,并选择屏幕样式。

                                                 

                                                                                     图1.34  创建AVD对话框

 说明:Name栏可以使用的字符包括a-z、A-Z、0-9、.、-、_。a-z表示从a到z26个字母,并且在两个字符中间不能有空格。


(17)单击“确定”按钮,返回“Android Virtual DeviceManager”对话框,如图1.35所示,这时可以看到已经创建了一个AVD模拟器,选中该模拟器,可以通过单击右侧的Edit、Delete、Details和Start按钮,分别对其进行编辑、删除、查看和启动等操作。

                                                    

                                                                                          图1.35  创建完成的AVD模拟器

说明:单击图1.35中的Start...按钮,将启动模拟器,第一次启动后的效果如图1.36所示。

                                                     

                                                                                    图1.36  Android模拟器效果图

作为程序开发人员,学习新语言的第一步就是输出“Hello World”。下面将详细讲解如何使用Eclipse工具开发这个程序。

1.3.1  创建Android应用程序

(1)启动Eclipse,选择“文件(F)”/“新建(N)”/“项目(R)...”菜单项,将打开“新建项目”对话框,在该对话框中,选择Android文件夹中AndroidApplication Project,单击“下一步(N)>”按钮,如图1.37所示。

                                                       

                                                                          图1.37  新建项目对话框

(2)将弹出“New Android Application”对话框,该对话框中首先输入应用程序名称、项目名称和包名,然后分别在MinimumRequired SDK、Target SDK、Compile With和Theme下拉列表中选择可以运行的最低版本、创建Android程序的版本,以及编译时使用的版本和使用的主题,如图1.38所示。

                                                         

                                                                                             图1.38  新建Android项目对话框

说明:在设置Minimum Required SDK(要求最小的 SDK版本)时,需要设置为API 14,或以上版本,否则在创建项目后,将自动生成一个名称为appcompat_v7的项目,用于兼容API 14以下版本。

(3)单击“下一步”按钮,将进入到如图1.39所示的配置项目存放位置的窗口,这里采用默认设置。

                                                                 

                                                                                          图1.39  配置项目存放位置的窗口

(4)单击“下一步”按钮,进入“Configure LauncherIcon”窗口,该窗口可以对Android程序的图标相关信息进行设置,如图1.40所示。

                                                         

                                                                                        图1.40  “Configure Launcher Icon”窗口

(5)单击“下一步”按钮,进入“Create Activity”窗口,该窗口设置要生成的Activity的模板,如图1.41所示。

                                                         

                                                                                       图1.41  “Create Activity”窗口

(6)单击“下一步”按钮,进入“New Blank Activity”窗口,该窗口设置Activity的相关信息,包括Activity的名称、布局文件名称、导航类型等,如图1.42所示。

                                                         

                                                                             图1.42  “New Blank Activity”窗口

(6)单击“完成”按钮,即可创建一个Android程序的创建。

1.3.2  Android项目结构说明

默认情况下,使用ADT插件创建Android项目后,其目录结构如图1.43所示。

                                                         

                                                                                        图1.43  Android项目结构

下面对图1.43中常用的包和文件进行说明。

1.src包

在src包中,保存的是应用程序的源代码,例如Java文件和AIDL文件等。MainActivity.java文件的关键代码如下。

public classMainActivity extends Activity {

         //该方法在创建Activity时被回调,用于对该Activity执行初始化

         @Override

         protected void onCreate(BundlesavedInstanceState) {

                   super.onCreate(savedInstanceState);

                   setContentView(R.layout.activity_main);

                   if (savedInstanceState ==null) {

                            getFragmentManager().beginTransaction()

                                               .add(R.id.container,new PlaceholderFragment()).commit();

                   }

         }

         //创建一个默认的选项菜单

         @Override

         public boolean onCreateOptionsMenu(Menumenu) {

                   getMenuInflater().inflate(R.menu.main,menu);

                   return true;

         }

         @Override

         public booleanonOptionsItemSelected(MenuItem item) {

                   int id = item.getItemId();

                   if (id ==R.id.action_settings) {

                            return true;

                   }

                   returnsuper.onOptionsItemSelected(item);

         }

         /**

          *创建一个简单的Fragment视图

          */

         public static class PlaceholderFragmentextends Fragment {

                   public PlaceholderFragment(){

                   }

                   @Override

                   public ViewonCreateView(LayoutInflater inflater, ViewGroup container,

                                     BundlesavedInstanceState) {

                            View rootView =inflater.inflate(R.layout.fragment_main, container,

                                               false);

                            return rootView;

                   }

         }

}

说明:上面的这些代码都是在创建项目时,ADT插件自动生成的。

2.gen包

在gen包中,包含的是ADT生成的Java文件。通常会自动生成两个Java文件,分别是R.java和BuildConfig.java。下面分别进行介绍。

  R.java

创建项目时自动生成的R文件的代码如下。

public finalclass R {

    public static final class attr {

    }

    public static final class dimen {

        public static final intactivity_horizontal_margin=0x7f040000;

        public static final intactivity_vertical_margin=0x7f040001;

    }

    public static final class drawable {

        public static final intic_launcher=0x7f020000;

    }

    public static final class id {

        public static final intaction_settings=0x7f080001;

        public static final intcontainer=0x7f080000;

    }

    public static final class layout {

        public static final intactivity_main=0x7f030000;

        public static final intfragment_main=0x7f030001;

    }

    public static final class menu {

        public static final intmain=0x7f070000;

    }

    public static final class string {

        public static final intaction_settings=0x7f050002;

        public static final intapp_name=0x7f050000;

        public static final inthello_world=0x7f050001;

    }

    public static final class style {

        public static final intAppBaseTheme=0x7f060000;

        public static final intAppTheme=0x7f060001;

    }

}


从上面的代码可以看到,R文件内部由很多静态内部类组成。内部类中,又包含了很多常量,这些常量分别表示res包中的不同资源。

注意:不能手动修改R文件,当res包中资源发生变化时,该文件会自动修改。

BuildConfig.java

public final class BuildConfig {
    public final static boolean DEBUG = true;
}

BuildConfig.java文件是调试(Debug)时用的,一般不用修改。

3.android.jar文件

在该文件中,包含了Android项目需要使用的工具类、接口等。如果开发不同版本的Android应用,该文件会自动替换。

4.libs包

libs放置的是第三方jar包,但最新版本的ADT下会将这些第三方包配置到Android Private Library里面。

4.assets包

该包用于保存原始资源文件。该文件夹中的文件会编译到.apk中,并且原文件名会被保留。可以使用URI来定位该文件夹中的文件,然后使用AssetManager类以流的方式来读取文件内容。通常用于保存文本、游戏数据等内容。

5.res包

该包用来保存资源文件,当该包中文件发生变化时,R文件会自动修改。

drawable子包通常用来保存图片资源。由于Android设备多种多样,其屏幕的大小也不尽相同。为了保证良好的用户体验,会为不同的分辨率提供不同的图片,分别存放在不同的文件夹中,默认情况下,ADT插件会自动创建drawable-xxhdpi(超超高)、drawable-xhdpi(超高)、drawable-hdpi(高)、drawable-mdpi(中)和drawable-ldpi(低)等5个文件夹,分别用于存放超超高分辨率图片、超高分辨率图片、高分辨率图片、中分辨率图片和低分辨率图片。

layout子包通常用来保存应用布局文件,ADT插件提供了可视化工具来辅助用户开发布局文件,如图1.44所示。

                                                             

                                                                                                                             图1.44  布局编辑器

activity_main.xml文件的代码如下。

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/container"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.lzwsoft.MainActivity"
    tools:ignore="MergeRootFrame" />



value子包通常用于保存应用中使用的字符串,开发国际化程序时,这种方式尤为方便。strings.xml文件的代码如下。

<?xml version="1.0" encoding="utf-8"?>
<resources>

    <string name="app_name">LzwTest</string>
    <string name="hello_world">Hello world lvzhengwen!</string>
    <string name="action_settings">Settings</string>

</resources>


 说明:读者可以将R文件与res包中的内容进行对比,就可以了解两者之间的关系。例如R文件中内部类string对应value包中strings.xml文件。

6.AndroidManifest.xml文件

每个Android应用程序必须包含一个AndroidManifest.xml文件,它位于根目录中。在该文件内,需要标明Activity、Service等信息,否则程序不能正常启动。

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.lzwsoft"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="14"
        android:targetSdkVersion="19" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.lzwsoft.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>


7.project.properties文件

该文件中包含项目属性,例如buildtarget等。如果需要修改项目属性,在Eclipse中右键单击项目,选择属性即可。

1.3.3  运行Android应用程序

(1)在项目LzwTest上单击右键按钮,弹出如图1.45所示的项目运行方式。选择“Android Application”,单击“确定”按钮运行程序。

                                                       

 

                                                                                                           图1.45  项目运行方式

(2)开始运行后,会显示模拟器的启动画面。启动完毕后,会显示屏幕锁定的模拟器,如图1.46所示。

                                                       

                                                                                         图1.46  屏幕锁定的模拟器

(3)在图1.46中,将屏幕中下部的锁头向左或者向右拖拽就可以解锁。解锁后的屏幕显示刚刚创建的应用运行效果如图1.47所示。

                                                          

                                                                                         图1.47  应用程序的运行效果


阅读更多

没有更多推荐了,返回首页