- 浏览: 2210794 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (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 是google开发的基于groovy语言 ,用于代替 ant 构建的一种配置型语言
Gradle 是基于groovy语言实现(基于JVM的语法和java类似的脚本语言)的一个Android编译系统, google针对Android编译用groovy语言开发了一套dsl,有额外需要直接使用groovy解决
gradle wrapper
每个基于gradle构建的工程都有一个gradle本地代理,叫做 gradle wrapper
在 /gradle/wrapper/gralde-wrapper.properties 目录中声明了指向目录和版本
本地建立文件 gradle.properties 或者在用户的 .gradle目录下建立 gradle.properties 文件作为全局设置,参数有
安装一个全局的gradle,并配置好Path变量,避免每个项目重复下载,这样后面编译项目就可以直接运行gradle build
常用命令
任务命令
快速构建命令
注意build命令把 debug、release环境的包都打出来的
如果需要指定构建使用如下命令
指定构建目标命令
构建并安装调试命令
assemble还可以和productFlavors结合使用,如果出现类似 Task 'install' is ambiguous in root project 这种错误,请查看配置的多个渠道然后修改命令为
./gradlew install[productFlavorsName] app:assembleDebug
来用命令构建调试
查看包依赖
查看详细依赖信息
使用离线模式
守护进程
并行编译模式
按需编译模式
不使用snapshot依赖仓库
前提是离线可以使用时
多渠道打包
assemble还可以和productFlavors结合使用
仓库设置
设置中心仓库
默认是jcenter、可以是mavenCentral
Android Studio 提速
禁用插件
去掉一些没有用的插件
Google Cloud Testing、Google Cloud Tools For Android Studio、Goole Login、Google Services、JavaFX、SDK Updater、TestNG-J
android studio 2.2.2新特性 编译缓存
工程根目录 gradle.properties 文件里加上
这个设置可以让Android Studio 会把依赖的 jar 或 arr 缓存到本地,并且把模块名称设置为 hash 值
这个开启后,可能导致 includeJarFilter 配置失效,Android Studio 升级到 2.3.0修复这个问题
每次编译生成的缓存在 $HOME/.android/build-cache
如果缓存过多可以手动删除该目录进行清除
升级到 Android Studio 2.3 后编译不兼容问题
升级到 Android Studio 2.3 后,Gradle Plugin 也升级到 2.3.0
对应推荐使用的 Gradle 版本是 3.3
这时候会发现工程模块目录下 {module name}/build/intermediates/exploded-aar/
目录没了
它会在 $HOME/.android/build-cache 下生成一部分缓存文件,来代替 exploded-aar
如果需要生成exploded-aar,可以配置项目目录下的 gradle.properties ,添加一行内容
然后重新构建项目即可在 {module name}/build/intermediates/看到 exploded-aar 目录
Gradle 是google开发的基于groovy语言 ,用于代替 ant 构建的一种配置型语言
Gradle 是基于groovy语言实现(基于JVM的语法和java类似的脚本语言)的一个Android编译系统, google针对Android编译用groovy语言开发了一套dsl,有额外需要直接使用groovy解决
gradle wrapper
每个基于gradle构建的工程都有一个gradle本地代理,叫做 gradle wrapper
在 /gradle/wrapper/gralde-wrapper.properties 目录中声明了指向目录和版本
本地建立文件 gradle.properties 或者在用户的 .gradle目录下建立 gradle.properties 文件作为全局设置,参数有
# 开启并行编译 org.gradle.parallel=true # 开启守护进程 org.gradle.daemon=true # 按需编译 org.gradle.configureondemand=true # 设置编译jvm参数 org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 # 设置代理 systemProp.http.proxyHost=127.0.0.1 systemProp.http.proxyPort=10384 systemProp.https.proxyHost=127.0.0.1 systemProp.https.proxyPort=10384 # 开启JNI编译支持过时API android.useDeprecatedNdk=true
安装一个全局的gradle,并配置好Path变量,避免每个项目重复下载,这样后面编译项目就可以直接运行gradle build
常用命令
注意:在window下可以直接运行 gradlew 如果是Linux 或者 mac 命令为 gradle gradlew 这里都简写成 ./gradle
任务命令
# 查看所有任务 ./gradlew tasks --all # 对某个module [moduleName] 的某个任务[TaskName] 运行 ./gradlew :moduleName:taskName
快速构建命令
# 查看构建版本 ./gradlew -v # 清除build文件夹 ./gradlew clean # 检查依赖并编译打包 ./gradlew build # 编译并安装debug包 ./gradlew installDebug # 编译并打印日志 ./gradlew build --info # 调试模式构建并打印日志 ./gradlew build --info --debug --stacktrace # 强制更新最新依赖,清除构建并构建 ./gradlew clean --refresh-dependencies build
注意build命令把 debug、release环境的包都打出来的
如果需要指定构建使用如下命令
指定构建目标命令
# 编译并打Debug包 ./gradlew assembleDebug ./gradlew aD # 编译并打Release的包 ./gradlew assembleRelease ./gradlew aR
构建并安装调试命令
# 编译并打Debug包 ./gradlew assembleDebug # 编译app module 并打Debug包 ./gradlew install app:assembleDebug # 编译并打Release的包 ./gradlew assembleRelease # Release模式打包并安装 ./gradlew installRelease # 卸载Release模式包 ./gradlew uninstallRelease
assemble还可以和productFlavors结合使用,如果出现类似 Task 'install' is ambiguous in root project 这种错误,请查看配置的多个渠道然后修改命令为
./gradlew install[productFlavorsName] app:assembleDebug
来用命令构建调试
查看包依赖
./gradlew dependencies --info
查看详细依赖信息
使用离线模式
./gradlew aDR --offline
守护进程
./gradle build --daemon
并行编译模式
./gradle build --parallel --parallel-threads=N
按需编译模式
./gradle build --configure-on-demand
不使用snapshot依赖仓库
前提是离线可以使用时
./gradlew clean aDR
多渠道打包
assemble还可以和productFlavors结合使用
# Release模式打包并安装 ./gradlew installRelease # 卸载Release模式包 ./gradlew uninstallRelease
仓库设置
设置中心仓库
默认是jcenter、可以是mavenCentral
repositories { maven { url "http://maven.oschina.net/content/groups/public" } }
Android Studio 提速
禁用插件
去掉一些没有用的插件
Google Cloud Testing、Google Cloud Tools For Android Studio、Goole Login、Google Services、JavaFX、SDK Updater、TestNG-J
android studio 2.2.2新特性 编译缓存
工程根目录 gradle.properties 文件里加上
android.enableBuildCache=true
这个设置可以让Android Studio 会把依赖的 jar 或 arr 缓存到本地,并且把模块名称设置为 hash 值
引用
这个开启后,可能导致 includeJarFilter 配置失效,Android Studio 升级到 2.3.0修复这个问题
每次编译生成的缓存在 $HOME/.android/build-cache
如果缓存过多可以手动删除该目录进行清除
升级到 Android Studio 2.3 后编译不兼容问题
升级到 Android Studio 2.3 后,Gradle Plugin 也升级到 2.3.0
对应推荐使用的 Gradle 版本是 3.3
这时候会发现工程模块目录下 {module name}/build/intermediates/exploded-aar/
目录没了
它会在 $HOME/.android/build-cache 下生成一部分缓存文件,来代替 exploded-aar
如果需要生成exploded-aar,可以配置项目目录下的 gradle.properties ,添加一行内容
android.enableBuildCache=false
然后重新构建项目即可在 {module name}/build/intermediates/看到 exploded-aar 目录
发表评论
-
带你深入理解 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 1193Flutter 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 807setstate的时候会一直无限的调用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,遇到个问题,应用中原本有设置界面 ...
相关推荐
### Gradle使用手册 #### 一、介绍 Gradle 是一款基于 Java 的开源自动化构建...通过上述介绍,我们可以看到Gradle在Android项目构建过程中扮演着重要角色,通过合理配置和使用Gradle任务,可以极大地提高开发效率。
- **常用命令**:`gradle build` 执行整个构建过程;`gradle clean` 清除构建结果;`gradle tasks` 列出所有可用任务等。 **2.3 Gradle 插件使用** - **插件介绍**:Gradle 插件扩展了 Gradle 的功能,提供了一套...
#### 二、常用Gradle命令 1. **gradlew clean**:清除项目下的`build`文件夹,通常用于清理之前构建产生的临时文件。 2. **gradlew check**:执行lint检查,帮助开发者发现代码中可能存在的问题。 3. **gradlew ...
在Android Studio中使用Gradle,有一些常用命令和参数可以帮助开发者执行不同的构建操作。例如,使用"-v"或"--version"可以查看当前Gradle的版本信息,使用"-h"或"--help"可以查看帮助信息。如果在构建过程中发生了...
5. **Android** (虽然标签中提到,但没有直接对应的插件): Jenkins 支持Android应用的构建和测试,通常会配合Gradle插件使用。例如,`android-emulator-plugin` 可以启动和管理Android模拟器,`android-lint-plugin`...
- **命令详解**:深入了解每个 Gradle 命令的作用及其参数。 - **依赖管理**:如何在项目中添加第三方库,包括 Maven 仓库中的库。 - **多渠道打包**:如何利用 Gradle 配置实现不同渠道的 APK 打包。 #### 六、...
Gradle是Android开发中常用的构建工具,它允许开发者通过编写Groovy或Kotlin DSL脚本来自动化构建过程。这个插件的出现,使得开发者无需手动处理PNG优化,而是可以直接集成到项目的构建流程中,自动对PNG文件进行...
- **Android Support Repository**:简化了Gradle中对Support Libraries的引用。 - **Intel x86 Emulator Accelerator (HAXM Installer)**:Windows平台上的Intel x86模拟器加速工具,可以显著提高模拟器的运行速度...
**aapt常用参数**: aapt工具支持多种命令行参数,例如: - `l[ist]`:列出ZIP格式文件(如ZIP,JAR,APK)的内容。 - `d[ump]`:打印APK的各种信息,如资源表、权限等。 - `p[ackage]`:主要的打包命令,用于创建...
Linux平台作为Android开发的常用环境,拥有丰富的工具集来创建和管理这些库。本主题主要围绕“linux打android so库工具”展开,详细介绍如何在Linux环境下构建和使用Android SO库。 首先,我们要了解的是交叉编译的...
Eclipse是常用的Android开发IDE,选择Eclipse IDE for Java Developers版本进行下载。下载完成后,无需安装,直接解压到指定位置即可使用。这是一款跨平台的工具,适用于Windows、Linux和Mac OS等操作系统。 3. **...
一个常用的库是Paho MQTT Android Service,可以通过Gradle添加依赖: ```groovy implementation 'org.eclipse.paho:org.eclipse.paho.android.service:1.2.5' ``` 2. **创建MQTT连接** 在Android代码中,创建`...
- **硬盘空间**:至少3GB可用空间用于Android Studio安装及SDK组件。 ##### 2.2 下载Android Studio包 访问Android Studio官方网站下载最新版本的安装程序。根据你的操作系统选择对应的安装包。 ##### 2.3 安装...
在Android平台上,FTP(File Transfer Protocol)是一种常用的技术,用于在服务器和客户端之间传输文件。本文将详细讲解如何在Android应用中实现FTP的文件上传和下载功能,同时支持对文件夹的操作。 首先,我们需要...
`mm`和`mmm`是常用的构建命令,`mm`用于构建当前目录下的模块,而`mmm`则可以处理多模块的构建需求。`lunch`命令用于选择目标设备配置,它会确定你编译的目标平台和版本。 4. **内核编译**:Android系统的内核是...
- **常用命令**:如adb install、adb shell、adb logcat等。 **2.4 模拟器使用和配置** - **功能**:模拟真实设备环境,方便开发者测试应用。 - **配置**:设置模拟器的硬件特性、系统镜像等。 #### 三、Android...
5. **Gradle插件**: 使用`gradle test`命令执行测试,这得益于Gradle的Android插件,该插件集成了测试任务,使得构建和运行测试变得简单。`--info`参数会提供更详细的测试执行信息。 6. **测试覆盖率**: 另一个常用...
// 定义命令参数 String[] command = {"convert", "-loop", "0", "-delay", "10", mp4Path, gifPath}; // 执行命令 int result = ImageMagick.execute(command, null); // 检查结果,0表示成功 if (result =...
在Android开发领域,Android Studio是官方推荐的集成开发环境(IDE),它提供了强大的工具和功能,使得开发者可以高效地创建、测试和调试Android应用程序。"android-studio-settings:我的Android Studio设置"这个...