Android应用程序结构总结
2019独角兽企业重金招聘Python工程师标准>>>
Android应用程序结构分析
由于是初学者,对于Android应用程序的结构的认识是一穷二白的,对于开发Android应用程序,必须先了解其程序的结构和作用。一下就用一个简单的例子来解剖:
从上图的程序来看,主要的文件有一下几个:
HelloActitity.java
HelloActitity.是继承Actitity基类的,其主要功能就相当于界面文件,用来将数据和和界面显示给用户,是用户交互的第一入口。以下是其文件的代码结构:
从图中可以看出,它有两个方法,onCreate(Bundle saveInstanceState)和onCreateOptionsenu(Menu menu)。
当HelloActivity.java文件加载的时候,首先是调用onCreate(Bundle savedInstanceState)方法。而其中super.onCreate(saveInstanceState)是调用父类Activity的onCreate方法;而setContentView(R.layout.activity_hello)是给Activity 设置可视视图,视图由R类来寻找。
res文件夹,laout中的activity_hello.xml,values中的string.xml,styles.xml,dimens.xml
res文件夹是负责整个应用的资源文件的存放和管理,其中activity_hello.xml是HelloAtivity面板的视图设置,其代码如下:
Activity_hello.xml是一个xml文件,利用xml控制桌面应用时比较少见的,而在网页上是经常发生的。从以上的代码可以看出,程序的界面是线性布局的(LinearLayout)和一个文本框(TextView)所组成的。Res的文件夹的其他文件也是香港的资源描述。
AndroidManifest.xml
每个应用程序都会有AndroidManifest.xml文件,该文件向Android系统描述了本程序所包含的组件,所实现的功能,能处理的数据,要请求的资源。其代码如下:
gen包中的R.java文件
R文件是由ADT自动生成的,其主要负责调用应用程序的非代码资源。
从R文件中可以看出,每个资源都会有相对应的一个整数。
Android.jar开发包
作为一个Java项目,通常情况下都会引入要用到的工具类,也就是Jar包,在Android开发中,绝大部分开发用的工具包都被封装到一个名叫Android.jar的文件里了。
如果我们在Eclipse中展开来看,可以看到j2se中的包,apache项目中的包,还有Android自身的包文件。在这里我们简单了解一下Android的包文件:
android.app :提供高层的程序模型、提供基本的运行环境
android.content :包含各种的对设备上的数据进行访问和发布的类
android.database :通过内容提供者浏览和操作数据库
android.graphics :底层的图形库,包含画布,颜色过滤,点,矩形,可以将他们 直接绘制到屏幕上.
android.location :定位和相关服务的类
android.media :提供一些类管理多种音频、视频的媒体接口
android.net :提供帮助网络访问的类,超过通常的java.net.* 接口
android.os :提供了系统服务、消息传输、IPC 机制
android.opengl :提供OpenGL 的工具
android.provider :提供类访问Android 的内容提供者
android.telephony :提供与拨打电话相关的API 交互
android.view :提供基础的用户界面接口框架
android.util :涉及工具性的方法,例如时间日期的操作
android.webkit :默认浏览器操作接口
android.widget :包含各种UI 元素(大部分是可见的)在应用程序的屏幕中使用
转载于:https://my.oschina.net/bonelwh/blog/160765
Android应用程序结构总结相关推荐
- android应用程序架构由哪四个组成,android 应用程序结构是哪些
src 目录 是源代码目录, 所有允许用户修改的 java 文件和用户自己添加的 java 文件都保存在这个目录中 是 1.5 版本新增的目录,用来保存 ADT 自动生成的 java 文件,例如 R. ...
- android应用 程序结构,Android应用结构
不同的应用对于界面结构的需求是不同的.例如: 像计算器和相机应用,构建在一个主要的活动 (activity) 上,主要是这个单一的活动处理各种操作 像拨号应用,主要的是在几个不同的活动中切换,没有很深 ...
- Android应用程序结构解析
界面布局文件 <?xml version="1.0" encoding="utf-8"?> 声明了XML的版本号和编码方式 <Relative ...
- android工程中的软件,通过Android Studio创建Android应用程序(附带解析)
这一节我们主要来创建一个简单的 Android 的应用程序. 创建 HelloWorld 工程 启动 Android Studio,依次选择 File --> New --> New Pr ...
- 2020Android大厂高频面试题(字节跳动+阿里,作为Android开发程序员
Update SALES Set qty=60 WHEREqty<60 COMMIT TRANSACTION B COMMIT TRANSACTION A A.SALES表中qty列最小值大于等 ...
- Android应用程序和其设计思想--转载----做记录
转载一篇Android 的先关文章,无论什么时候看都觉得有收获 文章来源地址 http://www.open-open.com/lib/view/open1466070376316.html 以下是正 ...
- 《Android UI基础教程》——1.2节Android 应用程序的基本结构
本节书摘来自异步社区<Android UI基础教程>一书中的第1章,第1.2节Android 应用程序的基本结构,作者 [美]Jason Ostrander,更多章节内容可以访问云栖社区& ...
- 以下关于android应用程序的目录结构,以下关于Android应用程序的目录结构描述中,错误的是哪个()...
以下关于Android应用程序的目录结构描述中,错误的是哪个() 更多相关问题 吸收实验中,塔底塔顶气相中二氧化碳的浓度采用( )测量. <国际海上避碰规则>适用于: 人的好奇心和强烈的求 ...
- Android程序结构
Project方式 .gradle文件夹:编译相关生成 .idea文件夹:idea生成 app文件夹----应用程序的源代码和资源 build----编译后的文件存放的位置,最终apk文件存放的位置 ...
最新文章
- 5.计算机发展个人理解-电路终究是电路 软件如何控制硬件 代码如何操作硬件 硬件是怎么执行代码 代码如何执行 软件与硬件如何交互 计算机思维 抽象 封装 规范 屏蔽 协议分层...
- Java字符串中常见的10个问题
- Matlab 进行离散时间信号序列的生成
- python中如何调用类_python如何调用java类
- 在计算机的通信子网中 其操作方式有两种,全国自考计算机网技术模拟试卷(八)及答案.doc...
- 【python+selenium自动化】使用pytest+allure2完成自动化测试报告的输出
- Andrew ng清华报告听后感
- 算法学习之路|方格分割
- 后院失火的大疆,距离真正的巨头还有多远?
- 【亲测有效】Ubuntu系统开机速度慢解决办法
- 算命小程序公历农历阴历阳历切换选择组件
- 拳皇重生服务器维护,《拳皇97 OL》3月10日更新维护公告
- 贝叶斯法则与先验概率,后验概率
- php怎么控制mp3播放器,简单的C++ MP3播放器类
- Linux C/C++ 获取系统时间
- echarts图表x,y轴的设置
- QNAP威联通NAS搭建SFTP服务,并内网穿透实现公网远程访问
- RadosClient OSDC
- 廖雪峰python视频教程-福利 | 廖雪峰官方Python教程,拿走不谢!
- 【simulink 三相半波整流电路】