该目录中存放的是该项目的源代码,这个目录包含了你即将创建的Java源代码文件,这个目录里的文件是根据package结构管理的,它与普通java项目中的/src目录很相似。
如上图所示,其中cn.com.qiang.helloworld 是包名,MainActivity.java 是默认的源代码文件,我们可以打开看一下里面的代码:
package cn.com.qiang.helloworld;
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;
}
}
Activity 就是我们大名鼎鼎的Android 四大组件之一,主要实现我们打开app 所看到的界面。
我们可以看看其中的代码:
public static final class drawable {
public static final int ic_launcher=0x7f020000;
public static final int p0015=0x7f020001;
public static final int p0022=0x7f020002;
}
public static final class id {
public static final int action_settings=0x7f080000;
}
public static final class layout {
public static final int activity_main=0x7f030000;
}
public static final class menu {
public static final int main=0x7f070000;
}
public static final class string {
public static final int action_settings=0x7f050001;
public static final int app_name=0x7f050000;
public static final int hello_world=0x7f050002;
}
这是其中的一部分,我们可以看到其中各个资源的ID。
这个目录包含了项目需要的库文件(Jar文件),这和普通Java项目中的/lib目录很相似。同时其中还包含项目打包时需要的META-INF目录.
所有的第三方JAR包引入都被放入了Android Private Libraries中
资源路径,不会在R文件注册。该目录用于存放项目相关的资源文件,这个目录和res包含的xml文件差不多,也是应用中引用到的一些外部资源。但主要区别在于这些资源是以原始格式保存,且只能用编程方式读取。例如文本文件,视频文件,MP3音频等媒体文件。
编译生成目录。二进制文件,包括class、资源文件、dex、apk等。
可以看到,这里01_项目名.apk 就可以直接在手机里安装使用了。
该目录用于存放应用程序中经常使用的资源文件,其中包括图片、布局文件以及参数描述文件等,其中包括多个目录。
可以看到,我们的drawable-hdpi 文件中有三个图片,注意:图片名字不能有大写字母和汉字,我们可以用F2修改其名字,且调用图片时,是不需要添加.png的。
其中TextView显示一个文件系统提供的空间。
Eclispse 同时为我们提供了Graphic Layout (可视化布局) :
memu主要用设置菜单文件
这个目录也包含了一些xml文件,但主要是应用中要引用的key-value对。这些XML文件声明了数组(Array)、颜色(color)、度量(Dimension)、字符串。之所以把这些东西分别放在单独的xml文件中主要是考虑到这些值能够在不更改源代码的情况下用于多语言环境。例如,根据用户语言的不同应用程序中的信息可以有多种语言版本。
1) strings.xml 文件—— 字符串资源文件,可以看一下源代码
QQ
Settings
你好啊!!哈哈!!
当 .xml 文件调用用strings中的字符串时,需这样调用:
android:text="@string/hello_world"
即 @string/+,则会调用strings.xml中定义的字符串;
当Java源代码需调用字符串时,则需要调用gen中的R.string这样来使用字符串;
2) dimens.xml 文件,主要用来设置文件的宽度和高度
16dp
16dp
这里 dp—宽度,sp— 字体大小
3) stypes.xml 文件
清单文件 这个XML文件包含了android应用中的元信息,是每个android项目中的重要文件。在软件安装的时候被读取,Android中的四大组件(Activity、ContentProvider、BroadcastReceiver、Service)都需要在该文件中,以及运行这个android应用程序需要的用户权限列表,例如:电话、短信、互联网、访问SD卡,同时也详细描述了android应用的项目结构。
1)、每个activity 都要注册,注册的方式 写上“包名+类名”即可:
android:name="cn.com.qiang.helloworld.MainActivity
2)、必须有一个activty 作为入口界面
intnet-filter 被称为意图过滤器。
代码混淆相关文件
工程属性的配置文件,配置编译的版本等。ADT14 以后, project.properties和default.properties合并成了project.properties。供Eclipse使用,读取该项目使用Android版本号