工程;
1、 src文件夹存放源码。
2、 gen下有跟src中一样的包文件,内部有一个名为R.java类,它是自动生成的一个类;该目录不用我们开发人员维护, 但又非常重要的目录 。 该目录用来存放由 Android 开发工具所生成的目录 。 该目录下的所有文件都不是我们创建的,而是由系统自动生成的。这个R,javav文件是只读类型,用户一般式不需要修改的!
R.java 文件中默认有 attr 、 drawable 、 layout 、 string 等四个静态内部类 , 每个静态内部类分别对应一种资源,layout 静态内部类对应layout 中的界面文件main.xml,其中每个静态内部类中的静态常量分别定义一条资源标识符,如 “ publicstatic final int main =0x7f030000; ” 用一个十六进制的数来代表常量,当开发者在res文件夹下添加或删除任何一个文件或一个属性,R.java都会随之进行更新!
3、 android 2.3.3/ 文件夹表明了开发环境的版本,内部存放 Android 自身的 jar 包。
4、 assets/该目录用来存放应用中用到的类似于视频文件、 MP3 一些媒体文件。
5、 res/ 该目录为资源目录 。该目录可以存放一些应用图标、界面文件、应用中用到的文字信息等。
res/目录下有三个 dawable 文件夹 , 区别只是将图标按分辨率高低来放入不同的目录中 ,drawable-hdpi存放高分辨率的图标, drawable-mdpi存放中等分辨率的图标, drawable-ldpi存放低分辨率的图标 。 程序运行时可以根据手机分辨率的高低选取相应目录下的图标。
值得注意的是:
如果是老版本的,比如是1.5版本的,res下的drawable文件夹只有一个,如需修改需要手动添加,
res/目录下layout/的文件main.xml是布局文件,
main.xml
<? xml version = "1.0" encoding = "utf-8"?>
< LinearLayout xmlns:android = "http://schemas.android.com/apk/res/android"
android:orientation = "vertical"
android:layout_width = "fill_parent"
android:layout_height = "fill_parent"
>
< TextView
android:layout_width = "fill_parent"
android:layout_height = "wrap_content"
android:text = "@string/hello"
/>
</ LinearLayout >
<LinearLayout>
“LinearLayout ”代表的是 “ 线性布局 ” ,所谓线性布局就是在该元素下的所有子
元素会根据其 “ orientation ” 属性的值来决定是按行或者是按列逐个显示。
<TextView >
该元素与 HTML 中的 < label> 元素比较相似。也是一种显示文本的控件。
另外:此文件里还可以自定义的添加开发所需要的其他的控件。
values/下的strings.xml文件,
用来定义字符串和数值
HelloWorld 项目的 strings.xml 文件内容如下:
<? xml version = "1.0" encoding = "utf-8"?>
< resources >
< string name = "hello" > Hello World,HelloActivity! </ string >
< string name = "app_name" > haozi</string >
</ resources >
每个 string 标签声明了一个字符串,name 属性指定其引用名。
AndroidManifest.xml: 该文件是功能清单文件,该文件列出了应用中所使用的所有组件;
AndroidManifest.xml
<? xmlversion = "1.0" encoding = "utf-8" ?>
<manifest xmlns:android = "http://schemas.android.com/apk/res/android"
package ="com.sharpandroid.activity" 命名应用程序的 Java 应用包
android:versionCode= "1" 声明android的版本
android:versionName= "1.0" >
<application android:icon = "@drawable/icon" 定义应用的图标
android:label= "@string/app_name" >定义显示的文本
<activity android:name = ".HelloActivity"
android:label= "@string/app_name" >
<intent-filter >
<action android:name = "android.intent.action.MAIN" /> 定义应用程序的入口
<category android:name = "android.intent.category.LAUNCHER" /> 定义程序的列表显示
</intent-filter >
</activity >
</ application >
< uses-sdkandroid:minSdkVersion = "7" /> 声明android开发所用的版本
1. <manifest> 元素
< manifest xmlns:android ="http://schemas.android.com/apk/res/android"
package ="com.sharpandroid.activity"
android:versionCode = "1"
android:versionName = "1.0" >
该元素是 AndroidManifest.xml 文件的根元素,“xmlns:android ”指 定 该 文 件 的 命 名 空 间 。 功 能 清 单 文 件 会 使 用 “http://schemas.android.com/apk/res/android” 所指向的一个文件 。 “ package ” 属性是指定 Android 应用所在的包“android:versionCode ”指定应用的版本号。
2. <application> 元素
<application> 的“ icon ”属性是用来设定应用的图标。该表达式指向的是png 图片。
<application> 的 “ label ” 属性用来设定应用的名称。指定其属性值所用的表达式
“ @string/app_name ”含义与上面的表达式“ @drawable/icon ”一样,同样是指向 R.jav a文件中的 string 静态内部类中的 app_name 属性所指向的资源。在这里它指向的是
“ strings.xml ”文件中的一条记录“ app_name ”,其值为 “ hello world! ” ,
3. <activity> 元素
<activity> 元素的作用是注册一个Activity 信息, 当我们在创建 “ HelloWorld ” 这个项
目时,指定了【Create Activity 】属性为“ HelloActivity ”,之后 ADT 在生成项目时帮我们自动创建了一个 Activity 名称就是“ HelloActivity.java ”, Activity 在 Android 中属于组件,它需要在功能清单文件中进行配置。
<activity> 元素的 “ name ” 属性指定的是该 Activity 的类名 。 我们可以看到这个属性值“.HelloActivity ”中的 “ . ” , “ . ” 代表的是在上面<manifest> 元素的“ package ”属性中指定的当前包。因而“ .HelloActivity ”的含义等价于“ com.sharpandroid.activity.HelloActivity.java ” 。如果 Activity 在应用的包中 , 则这个 “ . ” 可以去掉 , 但如果 Activity 不在应用的包中 ,而在应用的包的子包当中,如下图中的 OtherActivity 这个 Activity 配置时必须这么写“ .sub.OhterActivity ”, “ . ” 不可省略。因此建议在书写时不论何种情况都加上 “ . ” ,以免出错。
Activity 只能放在 “ 应用的包 ” 或者其子包里面,而不能在 “ 应用的包 ” 以外的包中 。这一点必须牢记。
4. <intent-filter> 元素
翻译成中文是“ 意图过滤器 ” 。首先要知道什么是意图( Intent ) 。应用程序的核心组件 ( 活动 、 服务和广播接收器 ) 通过意图被激活 , 意图代表的是你要做的一件事情 , 代表你的目的 , Android 寻找一个合适的组件来响应这个意图 , 如果需要会启动这个组件一个新的实例,并传递给这个意图对象。后面会有详细的介绍,在此只需有大致印象即可。组件通过意图过滤器( intent filters )通告它们所具备的功能—— 能响应的意图类型 。由于 Android 系统在启动一个组件前必须知道该组件能够处理哪些意图 , 那么意图过滤器需要在 manifest 中以<intent-filter> 元素指定。 一个组件可以拥有多个过滤器 , 每一个描述该组件所具有的不同能力 。 一个指定目标组件的显式意图将会激活那个指定的组件 , 意图过滤器不起作用 。 但是一个没有指定目标的隐式意图只在它能够通过组件过滤器任一过滤器时才能激活该组件。
第一个过滤器——
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
是最常见的。它表明这个 activity 将在应用程序加载器中显示,就是用户在设备上看到的
可供加载的应用程序列表。换句话说,这个 activity 是应用程序的入口,是用户选择运行这个应用程序后所见到的第一个 activity 。
5. 权限 Permissions
Permissions是一个非常重要的节点,Permission是代码对设备上数据的访问限制,这个限制被引入来保护可能会被误用页破坏用户体验的关键数据和代码。如拨号服务,短信服务等。每个许可被一个唯的标签所标识,这个标签常常指出了受限的动作。
一个功能( feature )最多只能被一个权限许可保护。如果一个应用程序需要访问一个
需要特定权限的功能,它必须在 manifest 元素内使用 <uses-permission> 元素来声明这一点。 这样 , 当应用程序安装到设备上之后 , 安装器可以通过检查签署应用程序认证的机构来决定是否授予请求的权限 , 在某些情况下 , 会询问用户 。 如果权限已被授予 , 那应用程序就能够访问受保护的功能特性 。 如果没有 , 访问将失败 , 但不会给用户任何通知 。 因此我们在使用一些系统服务,如拨号、短信、访问互联网、访问 SDCard 时一定要记得添加相应的权限,否则会出现一些难以预料的错误。
7、 / manifest >Procuard.cfg混淆器,进行加密和压缩代码,java代码编译成class文件,java代码也很规范,有时候代码不想让别人知道,就利用混淆器把源代码编译时改了,把那些名字改的乱其八糟的,使人无法阅读,它会把那些长名字改成a了b了,这样就减少字节了压缩了代码!!
8、 Project.properites配置文件版本信息。
发表评论
-
C 语言重点知识 面试必备2
2012-03-11 15:26 11711、unsigned int 类型的数据与int类型的数据运算 ... -
C 语言重点知识,面试必备
2012-03-10 22:48 18031、宏定义:也就是常用来做定值用的: ... -
scanf 很有用的用法
2012-03-10 22:26 1000[size=small]1、可用来检查输入值是否被接受[/s ... -
常量与操作符
2012-03-09 22:01 780一、常量 %d属于的是常量类型的替换, int % ... -
常量与操作符
2012-03-09 22:00 731一、常量 %d属于的是常量类型的替换, int % ... -
C语言基础总结
2012-03-09 21:59 983数据类型和变量: 从属的对象不同,空间不同,数据类型的不同可以 ... -
C/C++ 指针部分总结1
2012-03-09 21:57 10791、指向常量的指针,防止通过指针去修改变量的值,而不管变量是否 ... -
android五种布局-霓虹灯效果实现
2012-02-28 19:15 2534android五种布局-霓虹灯效果实现 ... -
自定义view-跟随手指动的小球
2012-02-28 09:07 1909View组件类似于javaSwing中的JPanel。它只是一 ... -
自定义view-跟随手指动的小球
2012-02-28 08:38 0自定义view-跟随手指动的小球自定义view-跟随手指动的小 ... -
使用xml布局和java代码控制UI-图片浏览器
2012-02-28 08:28 1521在android中。XML和java代码同样拥有控制布局的能力 ... -
Android界面编程与视图(view)组件
2012-02-22 17:49 1550android.view.View 已知直接子类: ... -
Android应用的基本组件介绍
2012-02-21 21:30 1273android应用的基本组件介绍: 1、Activit ... -
JSP分页实例
2011-11-07 19:29 682分页技术实现 在开发网站的项目中难免会遇到各种各样的分页操作 ... -
Servlet和JSP复习笔记
2011-11-07 19:51 7351. 理解典型的Web应用 1.1 浏览器客户端、We ...
相关推荐
在Android应用开发中,应用框架是开发者理解和掌握系统工作方式的关键。这个压缩包文件"Android--开发--应用框架原理与程序设计"显然包含了深入探讨这一主题的资源。Android应用框架是整个操作系统的核心部分,它...
### Android入门到精通-实训任务1-搭建Android开发环境 #### 一、实训目标与能力培养 本实训任务旨在帮助初学者快速掌握Android开发环境的搭建,并通过实践操作加深对Android开发基本流程的理解。实训完成后,学员...
在这个过程中,我们将探讨一系列关键知识点,涵盖Android系统的架构、开发环境的搭建、UI设计、数据存储、网络通信以及性能优化等多个方面。 首先,Android系统的基础架构是理解应用开发的前提。Android是基于Linux...
为了帮助开发者更好地学习和掌握 Android 移动应用开发技术,本文将提供一份详细的习题答案,涵盖 Android 开发环境搭建、模拟器创建、Android Studio 的组成结构与基本操作等多个方面。 一、Android 开发环境搭建...
在移动应用开发领域,Android Studio作为Google官方推荐的集成开发环境(IDE),已经成为Android应用开发的标准工具。本项目是一个基于Android Studio开发的Android版新闻应用,旨在提供一个学习和实践Android编程的...
在18个章节的学习过程中,你将深入理解Android应用开发的基本原理,包括项目的初始化、UI设计、Activity管理、Intent的使用,以及与系统和其他应用的交互。通过不断实践,你将能够创建出属于自己的Android小应用。
《实战Android应用开发》是李鸥先生的一本深入探讨Android应用程序开发的专业书籍。该书旨在帮助读者通过实际项目案例,掌握Android开发的核心技术,并提升在真实环境中的开发能力。源代码提供给读者一个实践和学习...
Android Studio是Google官方推出的集成开发环境(IDE),专为Android应用开发而设计。标题中的“android-studio-ide-193.6626763-windows.exe”指的是Android Studio 4.0的特定版本,适用于Windows操作系统。虽然这...
实验1-Android开发环境与第一个Android程序是针对嵌入式应用开发课程的一项实践任务,旨在让学生熟悉Android开发的基础流程和工具。在这个实验中,学生需要完成以下关键知识点的学习和操作: 1. **Android开发环境...
- **开发环境**:开发者可以在虚拟机中安装这些系统,以便于测试和调试Android应用程序。 - **教育培训**:教育机构可以利用这些系统来教授学生如何开发Android应用程序。 - **个人使用**:对于喜欢尝鲜的用户来说,...
总的来说,配置Android开发环境是进入Android开发世界的第一步,熟练掌握这些工具的使用,能为开发者提供一个高效且稳定的开发环境,从而更好地进行Android应用的开发和调试。通过不断地实践和学习,开发者可以逐步...
《Android Studio 181.5014246 Windows版:一站式移动应用开发环境详解》 Android Studio,作为谷歌官方推荐的Android应用程序开发集成开发环境(IDE),是每一个Android开发者不可或缺的工具。本文将深入探讨...
总之,"Android学习-readTheFuckingSourceCode"教程旨在引导开发者通过直接研究源代码来提高自己的Android开发水平。这是一条充满挑战但收益巨大的学习路径,只有深入源码,才能真正理解Android的精髓,从而创作出更...
本书旨在帮助读者从基础到高级,逐步掌握Android平台的开发技巧,实现高效、高质量的移动应用开发。 Android中文文档则是官方文档的中文版,为国内开发者提供了方便的语言环境,使得理解Google的官方技术指南变得...
【Android 开发环境下载】 Android 开发环境是用于创建、测试和调试Android应用程序的软件工具集。对于初学者和专业开发者来说,理解如何正确配置和安装Android开发环境至关重要。本篇将详细介绍Android开发环境的...
Android资源_01-Android开发环境搭建_实验01-Android开发环境搭建.pdf、实验02-Android应用开发HelloWorld.pdf; 02-Android Studio项目结构分析与调试_实验03-Android Studio项目结构分析.pdf、实验04-Android ...
总之,Android Studio 4.2.2针对Linux系统的这一版本,不仅提供了全面的开发工具集,还注重性能优化和用户体验,是Linux开发者进行Android应用开发的理想选择。通过不断学习和熟练掌握这一强大的开发工具,开发者...
《Android Studio 4.2.2:开启移动应用开发的新篇章》 Android Studio,作为Google官方推出的集成开发环境(IDE),是Android应用开发者不可或缺的工具。本次介绍的是Android Studio的4.2.2版本,其文件名为...