gradle版本区别(android 为什么不同gradle版本会影响三方库)
本文目录
- android 为什么不同gradle版本会影响三方库
- 关于build.gradle四个版本号的含义
- gradle中api、implementation和compile的区别
- android studio gradle版本越高越好吗
android 为什么不同gradle版本会影响三方库
因为不兼容。Jar文件,so文件,Library库文件,aar文件,远程jcenter、maven仓库文件。这几种引入方式各有利弊,对应的gradle配置也有所不同,本文根据平时的使用经验,做一个简单的总结,帮助大家更好的利用Gradle引入第三方库文件。一个优秀的第三方库一般会提供多种方式的引入,考虑到Eclipse和AS用户,至少要包含Jar文件和Gradle构建这两种,其他一些供应者会根据自己的功能模式提供其他引入方式,比如七牛云存储便提供了aar的引入方式。大家可以根据自己的项目需求选择合适的引入方式,毕竟,适合自己的才是最好的。
关于build.gradle四个版本号的含义
在一个Android studio的项目中,每一个module的build.gradle文件里面都标明了四个版本号,他们分别是 compileSdkVersion , buildToolsVersion , minSdkVersion , targetSdkVersion
很多人都不是很能弄清楚这四个版本的区别。在这里我 仅发表个人理解,如果有错,希望指正
解决的方法已经在错误日志当中提到了,在manifest文件中添加
调用requestPermissions进行申请权限
在onRequestPermissionsResult进行权限申请后结果的处理
如果将 targetSdkVersion 设置成 《23 ,那么在6.0及以上的设备上就不会以6.0的新特性来运行了,当然也不需要动态申请了。
如果上述有什么不对的地方,或者表达不清楚的地方,还请指正。
gradle中api、implementation和compile的区别
我们在gradle中引用第三方maven库时,一般通过下面的语句去引用:
然后sync project,就能成功引用对应的包到项目之中了,十分方便。除了使用compile关键字,使用implementation和api也能将包引用到项目中:
看起来这三个关键字的作用是一样的,那么,他们到底有什么区别呢? api和compile关键字作用效果是一样的,使用时可以互相替换。实际上,api关键字是用来替代compile关键字的,因为compile关键字将来会被弃用。在高版本的gradle,使用compile关键字会报错并提示使用api关键字代替:
在同一个module下,implementation和compile的使用效果相同,但是在不同module下,就会有所区别了。举个例子,在项目中有一个名为action的module,其gradle配置文件中引用了两个包:
然后在app module中引入action module:
如果此时你尝试在app module中引入action module在gradle中配置的两个maven库,你会发现,使用implementation关键字的appcompat-v7包无法在app module中使用,而使用compile关键字的design包则可以使用。 这样,两个关键字的区别就显而易见了, api或compile关键字引用的包对于其他module来说是可见的,而implementation关键字引用的包对于其他module来说是不可见的。
android studio gradle版本越高越好吗
这种脚本语言应该不是特别复杂,很好做到对低版本的兼容性不像android的系统,有方方面面的东西需要考虑所以如果有新版本的gradle就升级就好了
更多文章:
thinkpad x120e(thinkpad x120e配置)
2024年7月20日 10:11
联想ideapad y510(联想ideaPad y510最大支持内存)
2024年7月26日 18:15
intel gma hd 4000(intelgmahd4000相当于什么级别独立显)
2024年7月28日 17:12