Android工程的目录结构详解 - 新闻资讯 - 云南小程序开发|云南软件开发|云南网站建设-昆明葵宇信息科技有限公司

159-8711-8523

云南网建设/小程序开发/软件开发

知识

不管是网站,软件还是小程序,都要直接或间接能为您产生价值,我们在追求其视觉表现的同时,更侧重于功能的便捷,营销的便利,运营的高效,让网站成为营销工具,让软件能切实提升企业内部管理水平和效率。优秀的程序为后期升级提供便捷的支持!

您当前位置>首页 » 新闻资讯 » 技术分享 >

Android工程的目录结构详解

发表时间:2020-10-19

发布人:葵宇科技

浏览次数:47


在搭建Android开辟情况及简单地建立一个HelloWorld项目后,本篇精晓过HelloWorld项目来介绍Android项目标目次构造。本文的重要主题如下:
1、HelloWorld项目标目次构造
· 1.1、src文件夹
· 1.2、gen文件夹
· 1.3、Android 2.1文件夹
· 1.4、assets
· 1.5、res文件夹
· 1.6、AndroidManifest.xml
· 1.7、default.properties

[img]http://img.blog.csdn.net/20150104160231406
下面将分节介绍膳绫擎的各级目次构造。
1.1、src文件夹
顾名思义(src, source code)该文件夹是放项目标源代码的。打开HelloWorld.java文件会看到如下代码:
可以知道:我们新建一个简单的HelloWorld项目,体系为我们生成了一个HelloWorld.java文 件。他导入了两个类android.app.Activity和android.os.Bundle,HelloWorld类持续自Activity且重 写了onCreate办法。
以下解释针对没有学过Java或者Java基本脆弱的人 @Override 在重写父类的onCreate时,在办法前面加上@Override 体系可以帮你检查办法的┞俘确性。例如,public void onCreate(Bundle savedInstanceState){…….}这种写法是精确的,如不雅你写成public void oncreate(Bundle savedInstanceState){…….}如许编译器回报如下缺点——The method oncreate(Bundle) of type HelloWorld must override or implement a supertype method,以确保你精确重写onCreate办法。(因为oncreate应当为onCreate) 而如不雅你不加@Override,则编译器将不会检测掉足误,而是会认为你新定义了一个办法oncreate。
android.app.Activity类:因为几乎所有的晃荡 (activities)都是与用户交互的,所以Activity类存眷创建窗口,你可以用办法setContentView(View)将本身的UI放 到琅绫擎。然而晃荡平日以全屏的方法展示给用户,也可以以浮动窗口或嵌入在别的一个晃荡中。有两个办法是几乎所有的Activity子类都实现的:
· onCreate(Bundle): 初始化你的晃荡(Activity),比如完成一些图形的绘制。最重要的是,在这个办法里你平日将用构造资本(layout resource)调用setContentView(int)办法定义你的UI,和用findViewById(int)在你的UI中检索你须要编程地 交互的小部件(widgets)。setContentView指定由哪个文件指定构造(main.xml),可以将这个界面显示出来,然后我们进行相干 操作,我们的操作会被包装成为一个意图,然后这个意图对应有相干的activity进行处理。
· onPause():处应当分开你的晃荡时要做的工作。最重要的是,用户做的所有改变应当在这里提交(平日ContentProvider保存数据)。
更多的关于Activity类的具体信息此系列今后的文┞仿将做介绍,如不雅你想懂得更多请参阅相干文档。
android.os.Bundle 类:大年夜字符串值映射各类可打包的(Parcelable)类型(Bundle单词就是绑缚的意思,所有这个类很好懂得和记忆)。如该类供给了公有办法—— public boolean containKey(String key),如不雅给定的key包含在Bundle的映射中返回true,不然返回false。该类实现了Parceable和Cloneable接口,所以 它具有这两者的特点。
1.2、gen文件夹
该 文件夹下面有个R.java文件,R.java是在建立项目时主动生成的,这个文件是只读模式的,不克不及更改。R.java文件中定义了一个类——R,R类 中包含很多静态类,且静态类的名字都与res中的一个名字对应,即R类定义该项目所有资本的索引。看我们的HelloWorld项目是不是如斯,如下图:

图2、R.java对应res
经由过程R.java我们可以很快地查找我们须要的资本,别的编绎器也会检查R.java列表中的资本是否被应用到,没有被应用到的资本不会编绎进软件中,如许可以削减应用在手机占用的空间。
1.3、Android 2.1文件夹
该 文件夹下包含android.jar文件,这是一个Java 归档文件,个中包含构建应用法度榜样所需的所有的Android SDK 库(如Views、Controls)和APIs。经由过程android.jar将本身的应用法度榜样绑定到Android SDK和Android Emulator,这许可你应用所有Android的库和包,且使你的应用法度榜样在恰当的情况中调试。例如膳绫擎的HelloWorld.java源文件中 的:
1. import android.app.Activity; 
2. import android.os.Bundle; 
这里两行代码就是大年夜android.jar导入包。
1.4、assets
包含应用体系须要应用到的诸如mp3、视频类的文件。
1.5、res文件夹
资本目次,包含你项目中的资本文件并将编译进应用法度榜样。向此目次添加资本时,会被R.java主动记录。新建一个项目,res目次下会有三个子目次:drawabel、layout、values。
· drawabel-?dpi:包含一些你的应用法度榜样可以用的搁笔文件(*.png、*.jpg)
· layout:界面构造文件(main.xml)与WEB应用中的HTML类同,没修悛改的main.xml文件如下(HelloWorld的就没有修悛改):
[img]http://img.blog.csdn.net/20150104160502937
· valuesE敉件上所须要显示的各类文字。可以存放多个*.xml文件,还可以存放不合类型的数据。比如arrays.xml、colors.xml、dimens.xml、styles.xml
· 1.6、AndroidManifest.xml
项目标总设备文件,记录应用中所应用的各类组件。这个文件列出了应用法度榜样所供给的功能,在这个文件中,你可以指定应用法度榜样应用到的办事(如德律风办事、互联网 办事、短信办事、GPS办事等等)。别的当你新添加一个Activity的时刻,也须要在这个文件中进行响应设备,只有设备好后,才能调用此 Activity。AndroidManifest.xml将包含如下设置:application permissions、Activities、intent filters等。
HelloWorld项目标AndroidManifest.xml如下所示:
[img]http://img.blog.csdn.net/20150104160258872
关于AndroidManifest.xml如今就讲这么多,此系列后面的文┞仿将零丁具体介绍。
1.7、 default.properties
记录项目中所须要的情况信息,比如Android的版本等。
HelloWorld的default.properties文件代码如下所示,代码中的注释已经把default.properties解释得很清跋扈了:[img]http://img.blog.csdn.net/20150104160558468

相关案例查看更多