Articles of gradle

Android Studio proguard处理多库项目

我有一个使用外部引用库的应用程序(也就是说,库的目录与应用程序在同一级别 – 它不会复制到应用程序的文件夹中)。 库被应用程序引用,库和应用程序都包含proguard文件。 一切工作正常,直到我build立的应用程序。 当我构build的应用程序,所有引用库中定义的类都没有find – 我得到“无法find符号类…)错误的所有库类的导入。 正如我所发现的,这是因为在重build应用程序时,proguard混淆了所有类和variables,因此应用程序无法引用它们。 我已经将以下内容添加到我的build.gradle文件中, buildTypes { release { minifyEnabled true proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-project.txt' } debug { minifyEnabled false } } 但似乎在构build应用程序时,不考虑以上内容(或者在发布模式下完成构build)。 如果我将上面的内容更改为以下内容(即在释放模式下禁用proguard), buildTypes { release { **minifyEnabled false** proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-project.txt' } debug { minifyEnabled false } } 应用程序编译正常。 有针对这个的解决方法吗? 创build签名的应用程序时,我只能启用proguard吗? 这里是图书馆proguard文件: -optimizationpasses 5 -dontusemixedcaseclassnames -dontskipnonpubliclibraryclasses -dontpreverify -verbose -optimizations […]

Android – 错误:执行失败的任务':app:mergeDebugResources'

请帮帮我! 这里是错误的说: 错误:任务':app:mergeDebugResources'的执行失败。 错误:java.util.concurrent.ExecutionException:com.android.ide.common.process.ProcessException: 我的应用程序gradle是: apply plugin: 'com.android.application' android { compileSdkVersion 25 buildToolsVersion "25.0.1" packagingOptions { exclude 'META-INF/NOTICE' // will not include NOTICE file exclude 'META-INF/LICENSE' // will not include LICENSE file } defaultConfig { applicationId "com.aku.ec2ainun.stepondesign" minSdkVersion 18 targetSdkVersion 25 versionCode 1 versionName "1.1" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" multiDexEnabled true } dexOptions { javaMaxHeapSize "4g" } […]

Android工作室/ Gradle构build版本失败:无法确定任务的依赖关系:app:crashlyticsStoreDeobsRelease'

构build失败只在发布,debuggingbuild立良好。 Android Studio 1.4,Gradle 2.8 RC1,Gradle插件1.4.0 BETA 4 FAILURE: Build failed with an exception. * Exception is: org.gradle.api.GradleException: Could not determine the dependencies of task ':app:crashlyticsStoreDeobsRelease'. … Error:org.gradle.api.UnknownTaskException: Task with path 'dexRelease' not found in project ':app'.

Gradle返回包不存在

我正在尝试将gson库添加到我的android项目中(我正在使用Andrdoid-studio进行开发)。 为了添加库,我改变了AppProject / AppName / build.gradle文件: buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:0.4' } } apply plugin: 'android' repositories { mavenCentral() } dependencies { compile files('libs/android-support-v4.jar') compile 'com.google.code.gson:gson:2.2.4' } android { compileSdkVersion 17 buildToolsVersion "17.0.0" defaultConfig { minSdkVersion 4 targetSdkVersion 16 } } 所有似乎工作,直到我尝试使用它。 当我试图把它包括在内: import com.google.code.gson; Gradle抱怨道: Gradle: error: package com.google […]

Gradle Android插件 – 添加自定义风味属性?

有没有什么办法可以添加自定义属性到android插件gradle的productFlavor或buildType? 我希望在configurationbuildVariants时具有这种额外的灵活性,以便在为buildVariants指定任务时检查自定义属性。 productFlavors { flavorGroups "drm", "storeType" googlePlay { flavorGroup "storeType" buildConfig "public static final String TARGET_STORE = \"google\";" } samsungApps { flavorGroup "storeType" buildConfig "public static final String TARGET_STORE = \"samsung\";" } platformDrm { flavorGroup "drm" } widevineAppDrm { flavorGroup "drm" minSdkVersion 9 useWidevineAppDrmLib true } } 所以在这里你可以看到我已经添加自定义属性“useWidevineAppDrmLib”来build立味道。 在buildVariant.mergedFlavor中看到相同的属性会很好,所以我可以检查该属性的值,并build立额外的任务,比如当属性设置为true时,打包额外的.so文件: android.applicationVariants.each { variant -> if(variant.mergedFlavor.useWidevineAppDrmLib […]

使用Android Studio将资源文件夹中的html文件加载到android上的webview

我正在使用Android Studio / Gradle。 app \ src \ main \ android_asset文件夹中有名为chart.html的文件。 我试图加载这个文件到我的webview像这样: WebView view = new WebView(this); view.getSettings().setJavaScriptEnabled(true); view.loadUrl("file:///android_asset/chart.html"); setContentView(view); 但我总是得到错误:无法加载,因为ERR_FILE_NOT_FOUND。 我在这里错过了什么?

Android编译错误; Java插件已经被应用,与android不兼容

所以我做了一个可穿戴的应用程序,我可以使用MessageListenerService在屏幕上控制一个机器人汽车。 在尝试构build项目之后,我遇到了一些问题,要求我从SDK中安装“Android支持库”。 我在SO(链接)上发现了另一个类似的问题,它有一个解决scheme,但现在它说 “错误:已经应用了java插件,但它与Android插件不兼容” 这是我的可穿戴模块的build.gradle apply plugin: 'com.android.application' apply plugin: 'java' sourceCompatibility = JavaVersion.VERSION_1_6 //these two lines targetCompatibility = JavaVersion.VERSION_1_6 //are the only ones that matter android { compileSdkVersion 20 buildToolsVersion "20.0.0" compileOptions { sourceCompatibility JavaVersion.VERSION_1_6 targetCompatibility JavaVersion.VERSION_1_6 } signingConfigs { release { keyAlias 'C:\\Users\\Riekelt\\coolie.jks' keyPassword 'cut-out' storeFile file('path/to/release.keystore') storePassword 'cut-out' } } defaultConfig { […]

在Android SDK中丢失Gradle(使用cordova + ionic)

是的,我search了这个,但没有,只是关于ANDROID_HOMEpath的事情,但在我的情况下,我不认为这是真正的问题。 当我尝试做ionic build android我得到这个错误: 错误:在android sdk中找不到gradle包装。 可能需要更新你的Android SDK。 看这里:C:\安卓\ sdk \工具\模板\ gradle \包装 并发现在C:\Android\sdk\tools我没有“模板”文件夹,只是这样的: 我只在这个path中看到gradle包装器C:\Android\sdk\temp\ToolPackage.old01\templates\gradle\wrapper 为什么我在我的SDK文件夹中没有Gradle? 我错过了什么? 在SDK经理我有这个安装: 提前致谢

应用:transformClassesWithJarMergingForDebug”。 TransformException:java.util.zip.ZipException:在运行gradlew assembleDebug时重复条目

当我运行:在Android Studio项目根目录gradlew assembleDebug命令。 build设进程失败,我得到这个消息: 什么地方出了错: 执行任务':app:transformClassesWithJarMergingForDebug'失败。 com.android.build.api.transform.TransformException:java.util.zip.ZipException:重复条目:org / slf4j / impl / StaticLoggerBinder.class 在我的项目中有两个jar文件: slf4j-android-1.6.1-RC1.jar和slf4j-log4j12-1.7.21.jar 。 而这两个jar子都包含两个包含org.sl4j.impl.StaticLoggerBinder的jar子。 这是我的gradle文件内容,位于app文件夹中: android { compileSdkVersion 23 buildToolsVersion "22.0.1" defaultConfig { applicationId "com.ias.caniasandroid" minSdkVersion 18 targetSdkVersion 23 versionCode 1 versionName "1.0" multiDexEnabled true } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } dexOptions { jumboMode true javaMaxHeapSize […]

在android studio中无法parsing用于Google集成的符号'Auth'

我是androidstudio中的新手。 我在eclipse中完成了Google的集成,但是在工作室中遇到了问题。 我正在一步一步从这个网站: https : //developers.google.com/identity/sign-in/android/sign-in?configured=true 但我有一个问题。 我得到一个错误,无法解决符号'身份validation',我需要的API,也不能解决'SignInButton',看到的代码: import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import com.google.android.gms.auth.api.Auth; import com.google.android.gms.auth.api.signin.GoogleSignInOptions; import com.google.android.gms.common.ConnectionResult; import com.google.android.gms.common.SignInButton; import com.google.android.gms.common.api.GoogleApiClient; public class MainActivity extends AppCompatActivity implements GoogleApiClient.OnConnectionFailedListener { GoogleSignInOptions gso; GoogleApiClient mGoogleApiClient; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN).requestEmail().build(); mGoogleApiClient = new GoogleApiClient.Builder(this) .enableAutoManage(this /* FragmentActivity */, this […]