android studio 知识(1)

本文详细解析了Android Studio中同步项目与Gradle文件、构建目录下各项功能的区别,包括Make Project、Make Selected Modules、Clean Project、Rebuild Project等选项的作用及适用场景,帮助开发者理解并高效管理Android项目构建流程。

1、Android studio syn project with gradle files 按钮的功能

         

作用:按照Gradle文件同步引用库

实际的Androids项目,改某个文件几行代码,或者多个文件的Java代码没问题。但是当遇到以下问题时候,就得同步一下了:

1、Android项目包含有C++语言。

2、跨Module的项目。

总结一下:跨语言、跨Module的项目一般修改后,要同步一下。

2、Build目录下几个选项的区别

1、Make Project:编译Project下所有Module,一般是自上次编译后Project下有更新的文件,不生成apk。

2、Make Selected Modules:编译指定的Module,一般是自上次编译后Module下有更新的文件,不生成apk。

3、Clean Project:删除之前编译后的编译文件,并重新编译整个Project,比较花费时间,不生成apk。

4、Rebuild Project:先执行Clean操作,删除之前编译的编译文件和可执行文件,然后重新编译新的编译文件,不生成apk,这里效果其实跟Clean Project一样。

5、Build APK:前面4个选项都是编译,没有生成apk文件,如果想生成apk,需要点击Build APK。

6、Generate Signed APK:生成有签名的apk。

 

为了更清楚的知道clean和rebuild到底有什么区别,我把自己的一个小项目执行了一下这两个操作,并用对比软件对比了一下,红色部分是执行build操作的时候多出来的步骤。

大概意思:

:app:incrementalDebugJavaCompilationSafeguard

在incremental-safeguard目录下生成tag.txt,标识已经执行过task

:app:compileDebugJavaWithJavac

intermediates下生成classes文件夹,以及对应的dependency-cache文件夹,classes文件夹中包含之前已经解压的各个aar文件中的类,但是不包含libs下的jar包中的内容;同时还会生成一个tmp文件夹,内容为空;目录下不包括libs下的jar包内容

compile Debug Ndk UP-TO-DATE

编译调试NDK更新

:app:compileDebugSources

:app:incrementalDebugUnitTestJavaCompilationSafeguard UP-TO-DATE

编译调试单元测试的更新

:app:compileDebugUnitTestJavaWithJavac

:app:processDebugJavaRes UP-TO-DATE

res资源更新

:app:processDebugUnitTestJavaRes UP-TO-DATE

单元测试中res资源的更新

:app:compileDebugUnitTestSources

:app:incrementalDebugAndroidTestJavaCompilationSafeguard

:app:compileDebugAndroidTestJavaWithJavac

:app:compileDebugAndroidTestNdk UP-TO-DATE

单元测试NDK更新

:app:compileDebugAndroidTestSources

基本上build比clean多的就是会把NDK重新编译一遍,有更新的话就更新。以及一些资源文件的更新。基本上差不多。

这样看来,clean项目一般已经够用了,如果NDK以及资源文件有更改的话建议rebuild。

 

补充:

make 与 build 只编译,不生成apk
make 是编译改变的部分,build 是完全重新编译
build apk 是在make与build 的基础上生成apk

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值