- 浏览: 2210900 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (1240)
- mac/IOS (287)
- flutter (1)
- J2EE (115)
- android基础知识 (582)
- android中级知识 (55)
- android组件(Widget)开发 (18)
- android 错误 (21)
- javascript (18)
- linux (70)
- 树莓派 (18)
- gwt/gxt (1)
- 工具(IDE)/包(jar) (18)
- web前端 (17)
- java 算法 (8)
- 其它 (5)
- chrome (7)
- 数据库 (8)
- 经济/金融 (0)
- english (2)
- HTML5 (7)
- 网络安全 (14)
- 设计欣赏/设计窗 (8)
- 汇编/C (8)
- 工具类 (4)
- 游戏 (5)
- 开发频道 (5)
- Android OpenGL (1)
- 科学 (4)
- 运维 (0)
- 好东西 (6)
- 美食 (1)
最新评论
-
liangzai_cool:
请教一下,文中,shell、C、Python三种方式控制led ...
树莓派 - MAX7219 -
jiazimo:
...
Kafka源码分析-序列5 -Producer -RecordAccumulator队列分析 -
hp321:
Windows该命令是不是需要安装什么软件才可以?我试过不行( ...
ImageIO读jpg的时候出现javax.imageio.IIOException: Unsupported Image Type -
hp321:
Chenzh_758 写道其实直接用一下代码就可以解决了:JP ...
ImageIO读jpg的时候出现javax.imageio.IIOException: Unsupported Image Type -
huanghonhpeng:
大哥你真强什么都会,研究研究。。。。小弟在这里学到了很多知识。 ...
android 浏览器
Gradle 基本概念
首先我们学习几个gradle 的脚本语法,掌握了这几个语法,你就能非常简单的用gradle构建打包android项目了。 首先,我们来看下一个最简单android build.gradle。
build.gradle
本地依赖
gradle 作为构建工具,能够很方便的使用本地jar包,以下为使用的代码块。
远程依赖
gradle 同时支持maven,ivy,由于ivy我没用过,所以用maven 作为例子,以下为代码块:
android library 依赖
对于项目依赖 android library的话,就不是依赖一个jar,那么简单了,在这里需要使用gradle mulit project 机制。在过去,android library并没有一个很好的包管理方式,简单来说,在gradle出现以前,官方并没有一种用于管理android library 依赖包的方式,一般我们都是直接下载别人的android library project 源码进行集成,而对于第三方的android-maven-plugin 用的是apklib 格式。
而现在,官方终于推出一种android library的打包格式,扩展名为*.aar。前面提到,目前android gradle插件并不支持本地直接使用*.aar文件,不过,支持包管理库的引用方式,下面,我为大家说一下,怎么对android library 发布使用。
打包android library
对android library 进行打包直接在library项目下面使用gradle build 即可,然后,你就会在 build/libs 目录下看到两个*.aar文件,一个debug包用的,一个是release 下用的,看个人需求使用,这里我们用的是release 版本的 .aar 文件。
引用脚本跟前面讲的依赖库相似
最后,分享个maven库地址:http://mvnrepository.com/
首先我们学习几个gradle 的脚本语法,掌握了这几个语法,你就能非常简单的用gradle构建打包android项目了。 首先,我们来看下一个最简单android build.gradle。
build.gradle
//设置脚本的运行环境 buildscript { //支持java 依赖库管理(maven/ivy),用于项目的依赖。 repositories { mavenCentral() } //依赖包的定义。支持maven/ivy,远程,本地库,也支持单文件 dependencies { classpath 'com.android.tools.build:gradle:0.4' } } //声明构建的项目类型,这里当然是android了 apply plugin: 'android' //设置编译android项目的参数 android { compileSdkVersion 17 buildToolsVersion "17" defaultConfig { minSdkVersion 8 targetSdkVersion 17 } //Android默认配置 sourceSets { main { manifest.srcFile 'AndroidManifest.xml' java.srcDirs = ['src'] resources.srcDirs = ['src'] aidl.srcDirs = ['src'] renderscript.srcDirs = ['src'] res.srcDirs = ['res'] assets.srcDirs = ['assets'] } //测试所在的路径,这里假设是tests文件夹,没有可以不写这一行 instrumentTest.setRoot('tests') } //这个是解决lint报错的代码 lintOptions { abortOnError false } /** * 签名设置 */ signingConfigs { myConfigs { storeFile file("签名文件地址") keyAlias "..." keyPassword "..." storePassword "..." } } /** * 混淆设置 */ buildTypes { release { //签名(out下生成的apk,有签名的话生成release的apk,如果无签名则生成debug的apk) signingConfig signingConfigs.myConfigs runProguard true proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } /** * 渠道打包(不同包名) */ productFlavors { qqqq { applicationId = '包名' } hhhhh { applicationId='包名' } } } /** * .so文件的导入 */ task copyNativeLibs(type: Copy) { from fileTree(dir: 'libs', include: 'armeabi/*.so') into 'build/lib' } tasks.withType(Compile) { options.encoding = "UTF-8" } tasks.withType(Compile) { compileTask -> compileTask.dependsOn copyNativeLibs } clean.dependsOn 'cleanCopyNativeLibs' tasks.withType(com.android.build.gradle.tasks.PackageApplication) { pkgTask -> pkgTask.jniFolders = [new File(buildDir, 'lib')] } //依赖库 dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) }
本地依赖
gradle 作为构建工具,能够很方便的使用本地jar包,以下为使用的代码块。
dependencies { //单文件依赖 compile files('libs/android-support-v4.jar') //某个文件夹下面全部依赖 compile fileTree(dir: 'libs', include: '*.jar') } android { }
远程依赖
gradle 同时支持maven,ivy,由于ivy我没用过,所以用maven 作为例子,以下为代码块:
repositories { //从中央库里面获取依赖 mavenCentral() //或者使用指定的本地maven 库 maven{ url "file://F:/githubrepo/releases" } //或者使用指定的远程maven库 maven{ url "远程库地址" } } dependencies { //应用格式: packageName:artifactId:version compile 'com.google.android:support-v4:r13'} android { }
android library 依赖
对于项目依赖 android library的话,就不是依赖一个jar,那么简单了,在这里需要使用gradle mulit project 机制。在过去,android library并没有一个很好的包管理方式,简单来说,在gradle出现以前,官方并没有一种用于管理android library 依赖包的方式,一般我们都是直接下载别人的android library project 源码进行集成,而对于第三方的android-maven-plugin 用的是apklib 格式。
而现在,官方终于推出一种android library的打包格式,扩展名为*.aar。前面提到,目前android gradle插件并不支持本地直接使用*.aar文件,不过,支持包管理库的引用方式,下面,我为大家说一下,怎么对android library 发布使用。
打包android library
对android library 进行打包直接在library项目下面使用gradle build 即可,然后,你就会在 build/libs 目录下看到两个*.aar文件,一个debug包用的,一个是release 下用的,看个人需求使用,这里我们用的是release 版本的 .aar 文件。
引用脚本跟前面讲的依赖库相似
dependencies { compile(name: 'pulltorefresh', ext: 'aar') }
最后,分享个maven库地址:http://mvnrepository.com/
发表评论
-
带你深入理解 FLUTTER 中的字体“冷”知识
2020-08-10 23:40 649本篇将带你深入理解 Flutter 开发过程中关于字体和文 ... -
Flutter -自定义日历组件
2020-03-01 17:56 1122颜色文件和屏幕适配的文件 可以自己给定 import ... -
Dart高级(一)——泛型与Json To Bean
2020-02-23 19:13 1016从 Flutter 发布到现在, 越来越多人开始尝试使用 Da ... -
flutter loading、Progress进度条
2020-02-21 17:03 1194Flutter Progress 1 条形无固定值进度条 ... -
Flutter使用Https加载图片
2020-02-21 01:39 1037Flutter使用Https加载图片 使用http加载图片出 ... -
flutter shared_preferences 异步变同步
2020-02-21 00:55 856前言 引用 在开发原生iOS或Native应用时,一般有判断上 ... -
Flutter TextField边框颜色
2020-02-19 21:31 948监听要销毁 myController.dispose(); T ... -
flutter Future的正确用法
2020-02-18 21:55 812在flutter中经常会用到异步任务,dart中异步任务异步处 ... -
记一次Flutter简单粗暴处理HTTPS证书检验方法
2020-02-18 14:13 992最近在做Flutter项目到了遇到一个无解的事情,当使用Ima ... -
flutter 获取屏幕宽度高度 通知栏高度等屏幕信息
2019-07-27 08:39 1356##MediaQuery MediaQuery.of(con ... -
关于flutter RefreshIndicator扩展listview下拉刷新的问题
2019-07-10 19:40 1149当条目过少时listview某些嵌套情况下可能不会滚动(条目 ... -
flutter listview 改变状态的时候一直无限添加
2019-07-10 16:01 808setstate的时候会一直无限的调用listview.bui ... -
Flutter Android端启动白屏问题的解决
2019-07-09 00:51 1538问题描述 Flutter 应用在 Android 端上启动时 ... -
Flutter中SnackBar使用
2019-07-08 23:43 792底部弹出,然后在指定时间后消失。 注意: build(Bui ... -
Flutter 之点击空白区域收起键盘
2019-07-08 18:43 1799点击空白处取消TextField焦点这个需求是非常简单的,在学 ... -
Flutter 弹窗 Dialog ,AlertDialog,IOS风格
2019-07-08 18:04 1393import 'package:flutter/mate ... -
flutter ---TextField 之 输入类型、长度限制
2019-07-08 14:30 2354TextField想要实现输入类型、长度限制需要先引入impo ... -
【flutter 溢出BUG】键盘上显示bottom overflowed by 104 PIXELS
2019-07-08 11:13 1588一开始直接使用Scaffold布局,body:new Colu ... -
解决Flutter项目卡在Initializing gradle...界面的问题
2019-07-07 12:53 891Flutter最近很火,我抽出了一点时间对Flutter进行了 ... -
关于android O 上 NotificationChannel 的一些注意事项
2019-07-04 11:47 947最近在适配android O,遇到个问题,应用中原本有设置界面 ...
相关推荐
Android Studio Gradle 配置 文档
标题提到的"Android Studio Gradle配置dex分包"主要是指在构建过程中启用MultiDex支持,确保所有必要的类都被正确打包并能在运行时加载。我们将探讨两种不同Gradle版本下的配置方法。 ### Gradle插件版本低于3.0.0 ...
androidstudio gradle文件下载,下载地址:https://downloads.gradle-dn.com/distributions/gradle-5.4.1-all.zip,其他版本直接改版本号,因为as自动下载太慢,所以建议手动下载解压覆盖
请把文件复制在User/.gradle/文件路径下面完成android studio加速,并重新启动AS
android studio 配套资源 gradle8.7all
对于Android Studio用户,配置Gradle的方式通常是修改项目的gradle-wrapper.properties文件,指定对应的Gradle版本。例如,如果要使用5.6.4版本,可以在文件中将`distributionUrl`改为: ``` distributionUrl=...
本篇文章将深入讲解如何在Android Studio中配置Gradle 2.3.3插件,以及其所需的pom和jar文件。 首先,我们来理解`gradle-2.3.3.pom`和`gradle-2.3.3.jar`这两个文件的作用。`pom`文件是基于Maven的项目对象模型...
在本话题中,我们将详细探讨如何为Android Studio配置Gradle插件版本2.3.1,并了解其中涉及到的pom和jar文件的作用。 首先,我们需要理解Gradle的工作原理。Gradle基于领域特定语言(DSL)——Groovy,允许开发者...
总之,配置Android Studio与Gradle插件是一项关键步骤,正确选择和设置Gradle版本对于Android项目的构建效率和稳定性至关重要。了解Gradle的POM文件和JAR文件的作用,以及如何在项目中正确引用它们,将有助于提升...
Gradle是一个强大的自动化构建工具,Android Studio默认使用Gradle作为构建系统,允许开发者灵活地配置项目的构建过程。在本文中,我们将深入探讨如何配置Android Studio以使用Gradle 2.2.3插件,并理解pom和jar文件...
本文将详细介绍如何在Android Studio中使用新的Gradle构建工具配置NDK环境,以便进行原生代码(C/C++)的开发。 首先,NDK是Android Native Development Kit的缩写,它允许开发者使用C和C++编写性能关键部分的代码...
"解决Android Studio Gradle Metadata特别慢的问题" Android Studio是Android应用程序开发的官方IDE,它提供了许多功能来帮助开发者快速构建和测试Android应用程序。然而,在使用Android Studio时,有时可能会遇到...
在Android开发环境中,Android Studio是主流的集成开发环境(IDE),而Gradle则是一个强大的构建工具,用于自动化项目的构建过程。本篇文章将深入探讨如何在Android Studio中自定义Gradle插件,以此来扩展和优化项目...
6. **Android特性**:Gradle 4.4支持当时最新的Android平台特性,如Android Instant Apps、Android Architecture Components等,同时对Android Plugin for Gradle进行了升级,以更好地支持Android Studio的新特性。...
Gradle则是一个强大的构建工具,它被Android Studio采纳为默认的构建系统,使得项目构建过程更加灵活和自动化。本教程将针对初学者,详细介绍如何使用Android Studio和Gradle进行Android应用开发。 首先,让我们从...
在使用Android Studio进行Android应用开发时,正确配置Gradle环境变量是至关重要的一步,它直接影响着Android Studio是否能顺利构建项目。环境变量是操作系统用来指定操作系统运行环境的一些参数,如:临时文件夹...
android studio 配置gradle 使用android.mk进行编译jni,简单的jni调用,使用android.mk进行编译,注意事项:app下的gradle,以及编译生成的 .h文件,复制修改为 .cpp时,里面的文件的宏逻辑,最好去掉这个宏(#...
为了解决这个问题,你可以选择手动下载Gradle插件,比如本压缩包中的"gradle-3.3-all.zip",然后将它配置到Android Studio的本地Gradle仓库中。 配置本地Gradle的过程大致如下: 1. 解压"gradle-3.3-all.zip"到一...
总之,通过Android Studio的Gradle配置,我们可以轻松地为项目创建多个不同包名的应用版本,以满足不同的分发和测试需求。这种灵活性和可扩展性是现代Android开发的重要优势之一。在实际操作中,务必注意保持构建...