相关疑难解决方法(0)

当proguard被激活时,Gradle无法构建

我正在尝试使用Gradle发布我的Android应用程序.

一切正常,包括./gradlew clean build assembleRelease命令.

但是,只要我尝试使用proguard,Gradle就无法构建发布版本.

这是我得到的错误(堆栈跟踪激活):

...
:OSkin:validateDebugSigning
:OSkin:packageDebug
:OSkin:assembleDebug
:OSkin:prepareReleaseDependencies
:OSkin:compileReleaseAidl
:OSkin:generateReleaseBuildConfig
:OSkin:mergeReleaseAssets
:OSkin:compileReleaseRenderscript
:OSkin:mergeReleaseResources
:OSkin:processReleaseManifest
:OSkin:processReleaseResources
:OSkin:compileRelease UP-TO-DATE
:OSkin:proguardRelease
ProGuard, version 4.9
Reading input...
Reading program directory [/home/geantvert/workspace/OSkinProject/OSkin/build/classes/release]
:OSkin:proguardRelease FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':OSkin:proguardRelease'.
> Can't read [/home/geantvert/workspace/OSkinProject/OSkin/build/classes/release] (No such file or directory)

* Try:
Run with --info or --debug option to get more log output.

* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task …
Run Code Online (Sandbox Code Playgroud)

android proguard gradle

50
推荐指数
1
解决办法
5万
查看次数

为什么在我以前从未需要它时开始使用-libraryjars?

自从我将ADT从16更新到18(将Proguard的更新从4.6更新到4.8)后,Proguard的表现非常奇怪(并且不一致?).

最新的问题是当我尝试导出签名(发布)APK时,我收到以下错误:

Proguard returned with error code 1. See console
Warning: com.bta.LibProj2: can't find referenced class com.bta.R$string
Warning: com.bta.MyDlg1: can't find referenced class com.bta.R$string
Warning: com.bta.MyMenu: can't find referenced class com.bta.R$menu
Warning: com.bta.R: can't find referenced class com.bta.R$attr
Warning: com.bta.R: can't find referenced class com.bta.R$drawable
Warning: com.bta.R: can't find referenced class com.bta.R$menu
Warning: com.bta.R: can't find referenced class com.bta.R$string
Warning: com.bta.myapp.MyAppActivity$1: can't find referenced class com.bta.myapp.MyAppActivity
Warning: com.bta.myapp.MyAppActivity$ELicenseResponse: can't find referenced class com.bta.myapp.MyAppActivity
Warning: com.bta.myapp.MyAppActivity$MyLicenseCheckerCallback$1: can't find referenced class com.bta.myapp.MyAppActivity$MyLicenseCheckerCallback …
Run Code Online (Sandbox Code Playgroud)

android proguard adt

14
推荐指数
1
解决办法
5495
查看次数

使用Android和Google API客户端的Proguard

首先,对不起,如果这个话题得到了回答,但我还没找到......

我是Android和Proguard的新手.在开发我的应用程序的最后,我想用proguard减小它的大小,当然.由于我在我的应用程序中使用谷歌api客户端的一些库,我已将它们添加为外部jar.

好吧,我的应用程序工作正常,没有通过proguard步骤,但当我尝试导出它,它开始我的头痛.很多警告,我不知道如何跳过或安排.像这样的东西:

[2012-03-05 07:20:06 - CollaJoveThreads] Proguard returned with error code 1. See console
[2012-03-05 07:20:06 - CollaJoveThreads] Warning: com.google.common.base.Equivalence: can't find referenced class javax.annotation.Nullable
[2012-03-05 07:20:06 - CollaJoveThreads] Warning: com.google.common.base.Equivalence: can't find referenced class javax.annotation.Nullable
[2012-03-05 07:20:06 - CollaJoveThreads] Warning: com.google.common.base.Equivalence: can't find referenced class javax.annotation.Nullable
[2012-03-05 07:20:06 - CollaJoveThreads] Warning: com.google.common.base.Equivalences$Impl$1: can't find referenced class javax.annotation.Nullable
[2012-03-05 07:20:06 - CollaJoveThreads] Warning: com.google.common.base.Equivalences$Impl$1: can't find referenced class javax.annotation.Nullable
Run Code Online (Sandbox Code Playgroud)

而且更相似.

我跟踪了Google开发人员的推荐,并将这些行添加到我的proguard.cfg中:

# Needed by google-api-client to keep generic types …
Run Code Online (Sandbox Code Playgroud)

android proguard google-api-java-client

11
推荐指数
1
解决办法
5940
查看次数

标签 统计

android ×3

proguard ×3

adt ×1

google-api-java-client ×1

gradle ×1