前面Day1:eclipse创建Android模拟器,我们学会了如何在eclipse上创建Android模拟器。本着“穷根究底”的黑客精神,我们将较为详细地了解App项目——
BigLottery的目录结构
在eclipse的左侧展开BigLottery项目,本文主题如下所示:
下面将分节介绍上面的各级目录结构。
目录结构分析
1. src目录(关键词:源代码)
src,即”source code”。顾名思义,src是存储Java源文件的目录。打开MainActivity.java文件会看到如下代码:
package com.example.biglottery;
import android.os.Bundle; //传递数据
import android.app.Activity; //活动
import android.view.Menu; //组件
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to
// the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
当我们新建一个Android项目,系统自动生成了一个MainActivity.java文件。它导入了三个类:
android.os.Bundle、android.app.Activity、android.view.Menu。
MainActivity类继承了Activity类且需重写onCreate方法。
In a word, src是存储编写程序的目录。
2. gen目录(关键词:资源索引)
该目录用于保存自动生成的R.java文件(只读模式,不能更改)。
R.java文件是由AAPT工具根据应用中的资源文件自动生成的,包含了Android的资源文件的标识符。随着我们不断向项目中添加资源,R.java文件的内容也会越来越多。
因此,我们可以把R.java理解成Android应用的资源字典。
3. Android 4.3(关键词:Android版本)
Android版本资源,其中包含构建应用程序所需的所有的Android SDK 库(如Views、Controls)和APIs。通过android.jar将自己的应用程序绑定到Android SDK和Android Emulator,这允许你使用所有Android的库和包,且使你的应用程序在适当的环境中调试。
4. assets/res(关键词:资源)
Android应用可以将资源存储在两个目录:assets和res。
assets:资源可以任意存放,也可以建立任意层次的子目录。
res:资源只能存储在相应的子目录(如res/layout、res/values等)中,不能直接将资源存储在res目录中。如图所示:
两者具体区别:android res与assets资源的区别。
5. bin(关键词:目标文件)
bin文件夹中包含编译生成apk的应用程序:xxx.apk。
6. Android Private Libraries/libs(关键词:类库)
两者皆储存Android项目所需的第三方库。
Android Private Libraries引用的是第三方jar包,表示放在libs里面的jar包引用,视为私有引用。添加jar包到libs里面,系统自动把jar加载到android private libraries中。我们把libs中的jar包移除 Private Libraries中也就没有了。
简而言之,Private Libraries 就是libs里面的jar包的映射。
7. AndroidManifest.xml(关键词:配置)
Android项目的总配置文件,记录应用中所使用的各种组件。这个文件列出了应用程序所提供的功能,在这个文件中,你可以指定应用程序使用到的服务(如电话服务、互联网 服务、短信服务、GPS服务等等)。另外当你新添加一个Activity的时候,也需要在这个文件中进行相应配置,只有配置好后,才能调用此 Activity。
8. project.properties (关键词:默认属性)
该文件记录了项目中所需要的环境信息,比如Android的版本等。(注意:其不可修改!)
# This file is automatically generated by Android Tools.
# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
#
# This file must be checked in Version Control Systems.
#
# To customize properties used by the Ant build system edit
# "ant.properties", and override values to adapt the script to your
# project structure.
#
# To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home):
#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt
# Project target.
target=android-18
【文章小结】
- src(开发的程序)
- gen(资源文件的标识符)
- Android 4.3(Android SDK)
- assets/res(资源文件)
- bin(编译生成安装包)
- Android Private Libraries/libs(第三方类库的jar包)
- AndroidManifest.xml(系统清单文件)
- project.properties (默认属性文件)
【编辑推荐】