文档章节

Android自学之路-- 01:Android应用程序架构

 妞妞超人
发布于 2014/05/07 16:46
字数 920
阅读 17
收藏 0
点赞 0
评论 0

1、src/ java源代码存放目录

2、gen/ 自动生成目录。

    gen 目录中存放所有由Android开发工具自动生成的文件。目录中最重要的就是R.java文件。 这个文件由Android开发工具自动产生的。Android开发工具会自动根据你放入res目录的资源,同步更新修改R.java文件。正因为R.java文件是由开发工具自动生成的,所以我们应避免手工修改R.java。R.java在应用中起到了字典的作用,它包含了各种资源的id,通过R.java,应用可以很方便地找到对应资源。
3、res/ 资源目录

  •       res/drawable 专门存放png、jpg等图像资源。在代码中使用getResources().getDrawable(resourceId)获取该目录下的资源。
          drawable- hdpi、drawable- mdpi、drawable-ldpi的区别:
      (1)drawable-hdpi里面存放高分辨率的图片,如WVGA (480x800),FWVGA (480x854)
      (2)drawable-mdpi里面存放中等分辨率的图片,如HVGA (320x480)
      (3)drawable-ldpi里面存放低分辨率的图片,如QVGA (240x320)
      系统会根据机器的分辨率来分别到这几个文件夹里面去找对应的图片。
      在开发程序时为了兼容不同平台不同屏幕,建议各自文件夹根据需求均存放不同版本图片。

  • res/layout 专门存放xml界面文件,xml界面文件和HTML文件一样,主要用于显示用户操作界面。

  • res/values 专门存放应用使用到的各种类型数据。不同类型的数据存放在不同的文件中,如下:
    · strings.xml 定义字符串和数值,在Activity中使用getResources().getString(resourceId) 或getResources().getText(resourceId)取得资源。它的作用和struts中的国际化资源文件一样。
    <?xml version="1.0" encoding="UTF-8"?>
        <resources>
          <string name="xxx">xxxx</string>
        </resources>

    · arrays.xml 定义数组。
    <?xml version="1.0" encoding="utf-8"?>
    <resources>
        <string-array name="colors">
            <item>red</item>
            <item>yellow</item>     
            <item>green</item>     
            <item>blue</item>   
        </string-array>
    </resources>

    · colors.xml 定义颜色和颜色字串数值,你可以在Activity中使用getResources().getDrawable(resourceId) 以及getResources().getColor(resourceId)取得这些资源。例子如下:
          <?xml version="1.0" encoding="UTF-8"?>
    <resources>
      <color name="contents_text">#ff0000</color>
    </resources>

    · dimens.xml 定义尺寸数据,在Activity中使用getResources().getDimension(resourceId) 取得这些资源
          <?xml version="1.0" encoding="UTF-8"?>
    <resources>
      <dimen name="key_height">50dip</dimen>
    </resources>

    · styles.xml 定义样式。
    <?xml version="1.0" encoding="utf-8"?>
    <resources>
        <style name="itcastText" parent="@style/Text">
            <item name="android:textSize">18sp</item>
            <item name="android:textColor">#0066FF</item>
        </style>
    </resources>

  • res/anim/ 存放定义动画的XML文件。

  • res/xml/ 在Activity中使用getResources().getXML()读取该目录下的XML资源文件。

res/raw/ 该目录用于存放应用使用到的原始文件,如音效文件等。编译软件时,这些数据不会被编译,它们被直接加入到程序安装包里。 为了在程序中使用这些资源,你可以调用getResources().openRawResource(ID) , 参数ID形式:R.raw.somefilename。

4、assets资源目录
    Android除了提供/res目录存放资源文件外,在/assets目录也可以存放资源文件,而且/assets目录下的资源文件不会在    R.java自动生成ID,所以读取/assets目录下的文件必须指定文件的路径,如:file:///android_asset/xxx.3gp
5、AndroidManifest.xml 项目清单文件
     这个文件列出了应用程序所提供的功能,以后你开发好的各种组件(Activity、ContentProvider、BroadcastReceiver、Service)需要在该文件中进行配置,如果应用使用到了系统内置的应用(如电话服务、互联网服务、短信服务、GPS服务等等),你还需在该文件中声明使用权限。
6、default.properties 项目环境信息,一般是不需要修改此文件



  

© 著作权归作者所有

共有 人打赏支持
粉丝 1
博文 6
码字总数 4076
作品 0
邯郸
程序员
Android 网络编程 目录

Android 网络编程 目录 Android 网络编程1 Http协议 to be continued... Android 架构师之路 目录 Android 架构师之路1 UML图之用例图 Android 架构师之路2 UML图之类图 Android 架构师之路3...

香沙小熊
06/21
0
0
android自学笔记《三》——系统架构分析

下面是Android的系统架构图 翻译后 从上图中可以看出,Android系统架构为4层结构,从上层到下层分别是应用程序层、应用程序框架层、系统运行库层以及Linux内核层,分别介绍如下: 1)应用程序...

郭子
2012/02/03
0
5
Android 学习资料分享(2015 版)

我是如何自学Android,资料分享(2015 版) Tikitoo 2015.02.11 10:21 1713 字 3932 次阅读 自己学了两三个月的Android,最近花了一周左右的时间写了个App——Diigoer(已开源),又花了一两...

moz1q1
2015/02/12
0
4
Android 第一课——Android架构

声明:本文是学习Android时从《Android 4编程入门经典》摘抄!仅仅是作为复习时查看的笔记! 1 Android是一个linux系统 Android 是一个基于 Linux 的开源的手机操作系统。它可以供任何打算使...

learn_more
2014/12/28
0
0
android无framework Java应用开发

在android下,其实有另外的一类应用程序,他们用Java开发,但却不使用android的应用框架,不包含android应用程序四大组件中的任何一个,几乎就与我们平常在PC机上开发的那些Java应用程序一样...

WolfCS
2013/12/31
0
0
如何创建启动界面Splash Screen

如何创建启动界面Splash Screen 启动界面Splash Screen在应用程序是很常用的,往往在启动界面中显示产品Logo、公司Logo或者开发者信息,如果应用程序启动时间比较长,那么启动界面就是一个很...

天下杰论
2012/11/26
0
2
浅入浅出 Android 安全:第一章 Android

第一章 Android 来源:Yury Zhauniarovich | Publications 译者:飞龙 协议:CC BY-NC-SA 4.0 Android 安全架构的理解不仅帮助我了解 Android 的工作原理,而且为我开启了如何构建移动操作系...

apachecn_飞龙
2016/11/27
0
0
[Android 泥水匠] Android基础 之一:浅谈Android架构到HelloWorld案

作者:泥沙砖瓦浆木匠 个人签名:打算起手不凡写出鸿篇巨作的人,往往坚持不了完成第一章节。 如果我的帮到了你,是否乐意捐助一下或请一杯啤酒也好呢?有你支持,干的更好~ 点这参与众筹 我...

泥沙砖瓦浆木匠
2014/12/19
0
1
Android开发者必备的42个链接

下面收集了42个帮助大家学习Android的内容链接,部分内容是面向初学者的,帮助大家从头开始学习Android开发,其他则面向较高级的开发者。希望推荐的这些内容对你有帮助。 官方网站 1、谷歌A...

henry-zhang
2015/07/20
0
0
Android系统源代码分析步骤

目前,互联网行业正在朝着移动互联网方向强劲地发展,而移动互联网的发展离不开背后的移动平台的支撑。众所周知,如今在移动平台市场上,苹果的iOS、谷歌的Android和微软的Windows Phone系统...

紫地瓜
2012/11/19
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

expect(spawn) 自动化git提交和scp拷贝---centos(linux)

**在进行SCP文件拷贝中,往往需要进行用户密码的输入,即用户交互。若采用自动化脚本的方式进行,则可用以下方式: ** #!/usr/bin/expect #设置参数 set src [lindex $argv 0] set dest [lin...

helplove
5分钟前
1
0
用Build来构建对象的写法

如果一个类的属性过多,用构造器来构建对象很难写,因此我们时用Build方式来构建对象。写法大致如下。 import java.io.Serializable;import java.util.Date;public class Log impleme...

算法之名
7分钟前
11
0
利用 acme.sh 获取网站证书并配置https访问

acme.sh 实现了 acme 协议, 可以从 letsencrypt 生成免费的证书.(https://github.com/Neilpang/acme.sh/wiki/%E8%AF%B4%E6%98%8E) 主要步骤: 安装 acme.sh 生成证书 copy 证书到 nginx/ap...

haoyuehong
20分钟前
2
0
微擎框架内如何根据media_id获取到微信图片的路径

微擎的框架内,图片选择后,获取的是那个字符串是media_id,相当于你这张图片在微信的图片服务器里面的id 要求是:获取https://mmbiz.qpic.cn/mmbiz_jpg/…… 微信图片的路径 而微信并没有根据m...

老bia同学
24分钟前
1
0
Spring boot中日期的json格式化

Model 在model层中,类的日期属性上面添加如下注解: @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd hh:mm:ss") 参考 Jackson Date格式化教程...

亚林瓜子
26分钟前
2
0
Eclipse:Failed to load the JNI shared library

1.问题背景: 由于我之前使用jdk1.9学习,当使用Luke的时候发现jdk版本过高,需要向下配置jdk,就向朋友拷了一个安装包。重新配置路径后,便开始报错。 2.问题描述: Failed to load the JNI...

tinder_boy
28分钟前
1
0
少儿学习编程课程是否真的适合七八岁的低龄儿童[图]

少儿学习编程课程是否真的适合七八岁的低龄儿童[图]: 天下熙熙皆为利来,天下攘攘皆为利往。 这几年来,乐高教育机构在国内如同雨后春笋般出现,当然关闭/转手的也很多。从教师角度来看,部...

原创小博客
34分钟前
1
0
ES12-词项查询

1.词项查询介绍 全文查询将在执行之前分析查询字符串,但词项级别查询将按照存储在倒排索引中的词项进行精确操作。这些查询通常用于数字,日期和枚举等结构化数据,而不是全文本字段。 或者,...

贾峰uk
42分钟前
2
0
http状态码与ajax的状态值

ajax状态值 1.1 200 & OK:状态请求成功

litCabbage
45分钟前
2
0
iOS动画效果合集、飞吧企鹅游戏、换肤方案、画板、文字效果等源码

iOS精选源码 动画知识运用及常见动画效果收集 3D卡片拖拽卡片叠加卡片 iFIERO - FLYING PENGUIN 飞吧企鹅SpriteKit游戏(源码) Swift封装的空数据提醒界面EmptyView 沙盒文件浏览与分享调试控...

sunnyaigd
48分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部