安卓项目结构

1、HelloWorld项目的目录结构

  • 1.1、src文件夹
  • 1.2、gen文件夹
  • 1.3、Android 2.2文件夹
  • 1.4、assets 
  • 1.5、res文件夹
  • 1.6、AndroidManifest.xml
  • 1.7、default.properties

如图所示

 

 

src文件夹,顾名思义,就是存放java源代码的地方。

例如我们的代码如下

[java]  view plain  copy
  1. package cn.com.android.phone;  
  2.   
  3. import android.app.Activity;  
  4. import android.content.Intent;  
  5. import android.net.Uri;  
  6. import android.os.Bundle;  
  7. import android.view.View;  
  8. import android.view.View.OnClickListener;  
  9. import android.widget.Button;  
  10. import android.widget.EditText;  
  11.   
  12. public class PhoneCaller extends Activity {  
  13.     private EditText editText;  
  14.     @Override  
  15.     public void onCreate(Bundle savedInstanceState) {  
  16.         super.onCreate(savedInstanceState);  
  17.         setContentView(R.layout.main);  
  18.           
  19.          editText = (EditText) findViewById(R.id.editText);  
  20.           
  21.         Button button = (Button) findViewById(R.id.myButton);  
  22.         button.setOnClickListener(new OnClickListener(){  
  23.   
  24.             public void onClick(View v) {  
  25.                 String number = editText.getText().toString();  
  26.                 // 声明打电话的意图  
  27.                 Intent intent = new Intent(Intent.ACTION_CALL,Uri.parse("tel:"+number));  
  28.                 // 将意图传递给操作系统  
  29.                 PhoneCaller.this.startActivity(intent);  
  30.             }  
  31.               
  32.               
  33.         });  
  34.           
  35.           
  36.           
  37.           
  38.           
  39.     }  
  40. }  

我们的类继承了Activity这个类。一般我们都会实现其中的onCreate方法和onPause方法

 

onCreate方法

       该方法主要用于初始化我们的Activity。当用户通过请求和我们交互的时候,我们就通过Activity做出相应的处理。Activity从功能上说,比较像struts中的action.是系统和用户交互的一个接口。

onPause方法

       该方法在当你的Activity被销毁前执行的方法,一般用来进行数据的实例化。(Activity被销毁的原因有很多种,比如人为的,或者系统内存不足时等等)。

 

gen文件夹

       gen文件夹,主要包含一个R.java文件,这个文件是由系统自动维护的,不允许人为的修改,否则将会出现很多让你郁闷的错误。

       R.java是一个android资源的索引文件,里面定义了大量的静态内部类和静态常量,静态类的名称都和res文件夹下的文件夹一一对应的。如图

既然都是索引文件,那么该文件的作用和数据库中索引作用肯定也是差不多。它可以帮助我们快速的定位文件,此外,编译器还会检查R.java中定义的资源是否被使用了,如果没有被使用,那么打成安装包的时候,会自动过滤掉那些没被使用的资源,这样可以大大的节约空间。

(在强调一遍,没事不要瞎改R.java文件) 

 

Android 2.2文件夹

 

    没什么可说的,一个基础jar包。

 

asset文件夹

 

    该文件夹下通常会存放一些资源文件,例如mp3/视频文件等等。

     这个文件被称为原生文件夹,意思就是存放在这里的文件在打包成安装包时,会原样打包,不进行压缩等各种处理。这和res文件夹下的文件是不一样的,res下的资源文件会进行压缩处理的。主要的目的,实际上还是为了节约空间。

 

res文件夹

 

     主要有三个子文件夹,drawable_?dpi、layout、values

       drawable_?dpi:很多人疑问为什么这个文件夹下会分出来三个子文件夹,drawable_hdpi高分辨率、drawable_ldpi低分辨率、drawable_mdpi一般分辨率,实际上这和我们在asset中提到的文件优化压缩有关,android会对三个文件夹下的文件使用不同的压缩优化算法。这样就既保证了我们对某些图片较高分辨率的要求,也保证了这些资源不会占用太多的空间。

      layout存放布局文件。包括主布局文件和一般的组件布局文件。

      values下可以存放很多.xml文件,例如arrays.xml、colors.xml、dimens.xml、styles.xml,当然这些xml文件的名称都是随意取得。

 

AndroidManifest.xml

 

    

 

 

default.properties

记录了项目运行的环境信息,例如android的版本要求等。

      项目的总配置文件,记录应用中所使用的各种组件。这个文件列出了应用程序所提供的功能,在这个文件中,你可以指定应用程序使用到的服务(如电话服务、互联网服务、短信服务、GPS服务等等)。另外当你新添加一个Activity的时候,也需要在这个文件中进行相应配置,只有配置好后,才能调用此Activity。AndroidManifest.xml将包含如下设置:application permissions、Activities、intent filters等。

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页