Articles of android gradle

如何将apklib转换为aar

由于Gradle不支持apklib依赖关系,如何从apklib依赖关系迁移到aar依赖关系? 是否有可能手动或自动将apklib依赖转换为aar ? 如果是 – 如何,如果不是 – 为什么不呢? 在这个问题中,我假设我没有apklib原始项目,而是文件本身。

带有Java 8模块的Gradle Android项目

正如我在这篇文章中看到的 , Java 8现在还没有被Android正式支持。 所以我很感兴趣,如果有可能与Java 7和Java模块(作为依赖项)build立Android模块。 作为一个例子,我试图创build一个Gradle项目,它将包含一个Android模块和一个Java模块作为依赖项。 通过为这两个模块设置下面的compileOptions ,一切正常。 compileOptions { sourceCompatibility JavaVersion.VERSION_1_7 targetCompatibility JavaVersion.VERSION_1_7 } 但是,如果我尝试改变我的Java模块的compileOptions compileJava { sourceCompatibility = 1.8 targetCompatibility = 1.8 } 我得到以下错误: Error:Execution failed for task ':fc-android:preDexFreeDebug'. > com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.8.0_45\bin\java.exe'' finished with non-zero exit value 1 所以问题是,实际上可能有用1.7版编译的Android模块以及用1.8编译的依赖Java模块吗? 如果不是,那为什么? 更新: Retrolamba for Gradle (由@Saeed提到)很好,但是他们只支持lambdas,所以不能访问Stream API , DateTime […]

使用哪个gradle文件将应用程序设置为可debugging?

我是新手到android开发。 我刚刚开始设置我的设备来debugging我的应用程序。 而通过android开发工具,它说build.gradle文件中设置buildTypes debuggable为true。 我不知道要使用gradle.build(Module)或gradle.build(project)哪个档次的档案?

依赖org.json:json:20090211被debugging时会被忽略,因为它可能与Android提供的内部版本冲突

当我运行android studio时,出现下面的警告: 依赖org.json:json:20090211被debugging时会被忽略,因为它可能与Android提供的内部版本冲突。 如有问题,请用jarjar重新包装以更改课程包 我怎样才能解决这个错误? 谢谢。

Android Studio 3.0,AAPT2编译失败 – 资源文件中的无效维度

我在Arch Linux上使用Android Studio 3.0 Canary 3,我正在试图制作一个小应用程序。 在发布问题之前做了一些研究,但是我发现的解决scheme都不适用于我。 任何帮助将非常感激。 谢谢 错误:任务':app:mergeDebugResources'的执行失败。 >错误:java.lang.RuntimeException:java.lang.RuntimeException:com.android.builder.internal.aapt.AaptException:AAPT2编译失败: aapt2 compile -o / home / xhensi / AndroidStudioProjects / FindRestaurant / app / build / intermediates / res / merged / debug /home/xhensi/AndroidStudioProjects/FindRestaurant/app/build/intermediates/incremental/mergeDebugResources/merged.dir/values/values .XML 问题: – 错误:/home/xhensi/AndroidStudioProjects/FindRestaurant/app/build/intermediates/incremental/mergeDebugResources/merged.dir/values/values.xml:244 invalid dimen – 错误:/home/xhensi/AndroidStudioProjects/FindRestaurant/app/build/intermediates/incremental/mergeDebugResources/merged.dir/values/values.xml:245 invalid dimen – 错误:/home/xhensi/AndroidStudioProjects/FindRestaurant/app/build/intermediates/incremental/mergeDebugResources/merged.dir/values/values.xml:283 invalid dimen – 错误:/home/xhensi/AndroidStudioProjects/FindRestaurant/app/build/intermediates/incremental/mergeDebugResources/merged.dir/values/values.xml:309 invalid dimen – 错误:/home/xhensi/AndroidStudioProjects/FindRestaurant/app/build/intermediates/incremental/mergeDebugResources/merged.dir/values/values.xml:310 […]

多次调用Gradle buildConfig

我很难找出一种方法来使用Gradle将多行添加到我的BuildConfig。 看来,当我第二次调用buildConfig时,第一个消失了。 我最初是从不同的地方添加这个buildConfig,但是如果我这样做,可以创build一个最小的可重复testing: buildTypes { debug { versionNameSuffix "-DEBUG" buildConfig "public static final int THING_ONE = 1;" buildConfig "public static final int THING_TWO = 2;" } release { zipAlign true buildConfig "public static final int THING_ONE = 3;" buildConfig "public static final int THING_TWO = 4;" } } 然后当我尝试在代码中使用它: public class Thing { public static […]

禁用依赖性权限

目前我正面临以下问题: 我开发了应用程序'A',它使用权限1,2,3,并使用第三方库'B'作为依赖项(使用maven&gradle添加)。 库“B”使用权限4和5.现在,在构build应用程序时,清单合并器将权限4和5添加到应用程序“A”。 我怎样才能防止这种情况,只有最终清单中的权限1,2和3? 我的第一个猜测是使用其中一个清单合并标记,如下所示: http : //tools.android.com/tech-docs/new-build-system/user-guide/manifest-merger#TOC-Markers

Android构build工具1.1.0,unit testing文件夹?

我最近安装了最新的工具从谷歌到我的Android项目: buildscript { repositories { jcenter() mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:1.1.0' } } allprojects { repositories { jcenter() } } apply plugin: 'com.android.application' android { compileSdkVersion 21 buildToolsVersion "21.1.2" compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } defaultConfig { applicationId "com.xxx" minSdkVersion 10 targetSdkVersion 21 versionCode 200 versionName "2.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } signingConfigs { debug […]

安装apk时出错 – parsing软件包

我在一个Android应用程序工作,一切工作正常,当我在我的本地系统中build立它,并在仿真器上运行,但只要我做和发布和安装apk在我的手机上,它崩溃与错误 – There was an error parsing the package 正如您所看到的,我正在构build最新的SDK和构build工具,我的手机也在API上运行相同的版本。 我也有Untrusted Sources安装。 我正在这个链接上的“build立一个发布版本”部分的帮助。 它在我的app/build/outputs/apk文件夹中生成一个像 – app-release-unsigned.apk文件。 请帮忙。 仿真器AVD – Galaxy Nexus, 1 GB RAM, API 22 (Android 5.1.1), CPU x86 我的电话 – Nexus 5, 2 GB RAM, Android 5.1.1 build.gradle – apply plugin: 'android' apply plugin: 'com.android.application' repositories { mavenCentral() flatDir { dirs 'libs' } […]

错误:执行任务':app:processDebugResources'失败。 >在指数4

我在修改最新的SDK更新2之后构build我的项目时遇到问题(对不起,我不记得版本号)。我以前成功运行代码。 我不认为在我的项目中有任何错误。我经常因为“IDE内部错误发生”而得到错误信息是与此有关的任何事情。 请帮助thanks.Required代码如下 应用程序/的build.gradle: apply plugin: 'com.android.application' apply plugin: 'com.google.gms.google-services' android { compileSdkVersion 23 buildToolsVersion "23.0.1" defaultConfig { applicationId "io.sleeko.board" minSdkVersion 15 targetSdkVersion 23 versionCode 1 versionName "1.0" multiDexEnabled true } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile('cn.trinea.android.view.autoscrollviewpager:android-auto-scroll-view-pager:1.1.2') { exclude module: 'support-v4' […]