android studio project 工程目录
.gradle和.idea
我也解释不清楚,这是啥,都是编译的时候自动生成的文件.app
项目中的代码资源都在这个目录下1)build
包含一些在编译时自动生成的文件,平时用不到,部分时候在这个文件夹里寻找过debug.apk文件2)libs
第三方的jar包,之前的百度地图的官方例子,竟然很变态的把so包也放里面了,坑了不少人,so包也可以放置,但是需要的app/build.gradle里面声明,其实jar包也需要,不过一般会自动带,下文再详解3)androidTest
此处用来编写android Test测试用例,对项目自动化测试,但是哥没用啊,有空用一下, 装装逼4)java
放置java代码的地方,想写个略5)res
资源文件,略,6)AndroidMainifest.xml
清单文件,注册四大组件,应用权限声明,一些第三方sdk,竟然还用它存储appkey7)test
编写Unit Test ,感觉自己好low,没用过,有时间一定要用用,装装b多好8).gitignore
用过版本控制的应该都不陌生吧,就是版本控制时忽略的文件目录9).app.iml
ide自动生成的文件,不用管10).build.gradle
app的gradle构建脚本,里面是一些项目配置,下一篇文章详细学习11).proguard-rules.pro
用于指定项目文件的混淆规则,不混淆的apk是很容易被破解的,所以需要混淆并且引用第三方包时,请注意阅读说明,可能会有一个特殊的规则,不要忽视.如果公司要求不是很严格的话,可以使用一些其他的加固工具.比如360和百度都有类似的加固工具.- build
主要包含一些在编译时自动生成的文件 - gradle
gradle文件夹里面,为什么存的是wrapper,神经病啊,百度一番,发现,在没有安装Gradle的情况下使用Gradle Wrapper,好吧,里面的.properties文件,我会经常用到,修改distributionUrl,里面的版本号,可以更改,有事导入老的项目时,用的版本比较低,总不能,见一个下一个吧,那不是我们程序员的风范 - .gitignore
略 - build.gradle
里面的 classpath ‘com.android.tools.build:gradle:2.3.0’
和gradle/gradle-wrapper.properties里面distributionUrl=https://services.gradle.org/distributions/gradle-3.3-all.zip
感觉很冲突啊,后来发现这两个不是一回事,gradle-3.3-all,指的确实是gradle 的版本,
classpath ‘com.android.tools.build:gradle:2.3.0’只是gradle 的扩展工具android plugin - gradle.properties
gradle的全局配置文件,这个文件让我蛋疼啊,自从studio升级2.2之后,新创建的项目这个文件会出一个属性org.gradle.jvmargs=-Xmx1538m,声明需要1538mb的内存,我电脑虽让仅有8g的内存,但是绝壁够用啊,但是每次都编译失败,说俺内存不足,Md.zz,改成1028,或者删除这条属性都不会有问题(找到问题了,jdk必须是64位的) - gradlew和gradlew.bat
这两个文件是用来在命令行界面执行gradle命令的,gradlew用于linux活mac,gradlew.bat用于windows 项目名.iml
iml文件是用来标记intellij IDEA项目自动生成的一个文件,intellij IDEA家族都很吊,就是吃内存,表示电脑已烧手local.properties
用于指定本机中的android SDK路径还有Ndk路径,如果sdk或者ndk路径变化,就顺便更改一下,不然会报错settings.gradle
用于指定引入library模块,
include ‘:app’, ‘:mylibrary’
如果是使用studio新建的,会自动引用,如果从外部复制过来的,就是要手动添加了,添加的时候不要忘了,app/build.gradle里面也需要更改,compile project(‘:mylibrary’)