您的位置:首页 > 移动开发 > Android开发

小白带你学安卓——工程目录结构及日志

2017-07-13 10:17 218 查看
首先呢,我们接着上一篇博客的内容。对上一篇做一个简单的回顾,上一篇的重点就是安卓的体系架构,如果有什么不清楚的地方呢,可以打开上一篇的博客再看一看。上一篇链接:


初识安卓

这篇博客的主要内容也很简单啦!第一个问题讲的是安卓的工程目录结构,第二个问题是简单的介绍一下安卓的日志。


安卓的工程目录结构

打开我们android编译器,EC。可以看到我们上一篇中所讲到的HelloWorld项目。




你可以把这个理解为工程目录,如果再细分的话,你可以一一打开这些文件夹,发现里面还包含了很多东西。
我对安卓项目的工程目录做了一些总结:
Android项目的目录结构
1.src:存放的java源代码
2.gen(该目录由开发工具自动维护,请勿修改)
R:
它会对res文件夹下面的所有资源生产一个唯一的资源标识,以方便我们使用这些资源
3.assets:存放资源文件 ,它下面的文件不会在R文件中产生标识,只能使用路径来访问
4.bin:存放的是当前工程编译好的class文件以及其它的资源文件
5.libs:第三方类库(第三方jar包)
6.res:存放资源文件,它里面存放的所有资源文件都会在R文件里面产生一个唯一的标识
res下同一个文件夹下的资源不能重名(后缀不同文件名相同),res下面的文件的命名只能是小写字母,数字,下划线和.,并且不能以数字开头
---drawable:存放图片资源(一般来说,同一张图片需要提供多个尺寸,以适配不同的手机)
dpi:dot per inch,像素密度,每英寸的象素的数量

---layout:存放布局文件
一般来说,一个布局文件就对应一个界面,当然也可以多个界面使用同一个布局文件

---menu:存放的菜单资源文件
---values:值
---dimens.xml:存放的而已或者控件之间的尺寸单位
---strings.xml:存放的文字资源   支持国际化
---styles.xml:存放的样式文件
---values-v11:在api 11+的设备,该目录下的styles.xml会替换res/values下面的styles.xml
---values-v14:在api 14+的设备,该目录下的styles.xml会替换res/values下面的styles.xml
---raw:存放音频文件
---anim:存放动画文件

如果你想使用res下面的资源文件,该如何使用?
a.如果是在java文件中,R.类别名.资源的文件名
b.如果你想在资源文件中使用,@类别名/文件名

7.AndroidManifest.xml 清单文件
I.versionCode:版本号  versionName:版本名
II.minSdkVersion:可以运行的最低SDK  targetSdkVersion:目标sdk
III.声明该应用需要哪些权限  比如:访问通讯录,联网,访问sd卡
IV.对Android四大组件的声明

8.project.properties  声明该应用程序使用哪个版本的sdk进行编译
差不多就这些东西了吧(初学的我和你们一样,刚开始还有很多东西搞不清,在接下来的很长很长一段时间里,我都会带着大家一步步熟练的运用里面的东西来写demo)


日志

日志,概念的东西我就不说啦,那我简单的总结概念性的东西——打印程序运行中的信息,为了方便查找bug,调试。日志就是干这个的,其他的也没有卵用了。在我们实际应用中呢,日志确实有很大的作用哒,就像前面说的,找bug,做调试。我相信,学安卓的朋友们之前都接触过java,java中呢,一报错的话,会给你显示第几行有错。安卓的日志也是差不多哒,你找到有错误信息的日志时,点击则会跳转到你写错的地方。是不是很神奇呢,大家可以在helloworld的demo里呢,故意写一个错误试一试。
总结一下日志的用法:
1.在程序中添加打印日志的语句
Log.*(tag,信息);
2.当程序崩溃时时,需要将日志输出文件中,方便根据错误信息查找原因


最后呢,给大家开一个小差,也是我昨天刚刚看到的:android程序的安装过程

打包成APK过程:xxx.java---javac-->xxx.class--dx工具-->class.dex文件 ----签名(证书)---->xxx.apk
使用adb install xxx.apk  与安卓设备建立 socket连接,进行安装
安装的过程实际的工作:
a.实际会将xxx.apk复制到/data/app/xxx-1.apk
b.同时会在/data/data/目录下生成一个以包名为名字的文件夹,主要是用来缓存数据
可能以后会用得到哦,我先留着啦。说白了,安装实际上就是复制,卸载实际上就是删除。

好了,这篇内容又写完了,大家下去一定要多动手练习哦。我自己回去再学习学习之后,再回来更新博客!(如果有不对的地方,欢迎大家进行批评)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android