Day 2:Android项目的目录结构详解

来源:互联网 发布:电台主播录音软件 编辑:程序博客网 时间:2024/06/10 14:58

前面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

【文章小结】

  1. src(开发的程序)
  2. gen(资源文件的标识符)
  3. Android 4.3(Android SDK)
  4. assets/res(资源文件)
  5. bin(编译生成安装包)
  6. Android Private Libraries/libs(第三方类库的jar包)
  7. AndroidManifest.xml(系统清单文件)
  8. project.properties (默认属性文件)

【编辑推荐】

  • Day1:eclipse创建Android模拟器
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 合约机不想要了怎么办? 移动A3手机老卡怎么办 中国移动手机a3很卡怎么办 移动手机a4好卡怎么办 红米手机卡顿反应慢怎么办 红米3s网速慢怎么办 红米4a内存不足怎么办 红米3s手机发热怎么办 魅蓝s6信号差怎么办 oppo手机媒体音量没声音怎么办 红米note3反应慢怎么办 红米4g信号差怎么办 红米4g网速慢怎么办 红米24g信号不好怎么办 红米54g信号不稳定怎么办 红米4a玩游戏卡怎么办 红米4x卡顿怎么办 红米主板烧了怎么办 红米3按键失灵怎么办 l安卓手机运存不够用怎么办 红米2屏幕失灵怎么办 红米手机电池不耐用怎么办 红米手机没内存怎么办 红米2a卡顿怎么办 红米2a手机卡顿怎么办 红米5a内存不足怎么办 红米note1s内存不够怎么办 红米2手机没内存怎么办 红米note显示无服务怎么办 红米手机死屏了怎么办 红米4a信号不好怎么办 小米2a开不了机怎么办 红米4x屏幕失灵怎么办 红米4x外屏坏了怎么办 honor手机开不了机怎么办 honor黑屏开不了机怎么办 红米2开机停在mi怎么办 红米手机无法开机怎么办 小米手机帐号密码忘了怎么办 小米手机忘记小米账号密码怎么办 小米4账号密码忘了怎么办