我正在尝试手动混淆我的Android应用程序(是的,我知道,这很痛苦),为此我需要保留我实现的所有方法,同时还要使用ProGuard混淆它们。我试过像这样更改配置:-keepclasscom.project.x.*{}但它保留了所有类名和方法名,并且仍然删除了我未使用的代码。我该怎么做才能解决这个问题?提前致谢! 最佳答案 正如CommonsWare所解释的,您似乎不太可能希望保留未使用的方法并混淆它们的名称,但ProGuard支持它如下:-keepclassmembers,allowobfuscationclasscom.proj
我正在使用Proguard混淆Android应用程序。一切正常,但我正在努力从错误报告中追溯堆栈跟踪。这是我的混淆代码的摘录:privateeza(xparamx){return(ez)this.J.get(paramx);}privatevoida(com.b.a.fparamf){IteratorlocalIterator=this.K.iterator();while(true){if(!localIterator.hasNext())return;emlocalem=(em)localIterator.next();if(localem.a((int)(this.i/this.
我有一个使用MediaPlayer播放蜂鸣声的Activity,即使在proguarded生产版本中也能正常工作。随着最新版本的发布,它现在突然崩溃了Causedby:android.content.res.Resources$NotFoundException:Fileres/raw/beep.oggfromdrawableresourceID#0x7f060000atandroid.content.res.Resources.openRawResourceFd(Resources.java:994)atandroid.media.MediaPlayer.create(MediaPl
我正在尝试构建一个启用了proguard的发布apk。我收到以下错误。我将在下面附上完整的堆栈跟踪。Unexpectederrorwhileevaluatinginstruction:Class=[*]Method=[myMethod(Ljava/lang/String;Ljava/util/Map;)V]Instruction=[532]aload_3v3Exception=[java.lang.IllegalArgumentException](Valueisnotareferencevalue[proguard.evaluation.value.UnknownIntegerVal
我在AndroidStudio中创建了一个新项目,并正在使用Gradle构建它。我已经为发布构建添加了Proguard集成,每次运行assembleRelease步骤时,我都会看到这个注释:Note:theconfigurationreferstotheunknownclass'Object'Maybeyoumeantthefullyqualifiedname'java.lang.Object'?我的Proguard配置文件或AndroidSDK文件夹中的配置文件均未包含非限定名称Object。我的build.gradle包括:buildTypes{release{runProguar
我们需要存储和检索用户在线使用我们的应用生成的内容。为此,我们决定使用AndroidStudio集成的GoogleCloudEndpoints模板来快速创建API(官方使用示例here)。它在调试中运行良好,但在Release模式下,启用Proguard时,它会失败。更糟糕的是,我找不到任何关于将Proguard与AndroidStudio的端点模板结合使用的文档或示例。经过一个小时左右的摸索并尝试让它工作后,proguard-rules.pro现在看起来像这样:-keepclasscom.google.api.**{public*;}-dontwarncom.google.api.*
我正在开发xamarin应用程序。当我在android属性中启用“ProGuard”时,在构建应用程序时,出现以下错误:"java.exe"exitedwithcode1.proguardcfg文件具有以下内容:-keeppublicclass*extendsandroid.app.Activity-keeppublicclass*extendsandroid.app.Application-keeppublicclass*extendsandroid.app.Service开发环境:VisualStudio2015Xamarin4.0.4.4 最佳答案
我已经在我的项目中激活了混淆器,因为我正试图在GooglePlay上发布它。即使proguard-android.txt有-keepclassmembersclass**.R$*{publicstatic;这意味着它不应该混淆我需要的R.raw类,我发现在运行这段代码时importheadwayEnt.Blackhole_Darksun.R;privatestaticfinalStringRES_PATH="headwayEnt.Blackhole_Darksun.R";publicstaticintgetFileHandle(StringfileName,Stringpath){St
我最近从Eclipse转到了AndroidStudios。我让我的应用程序通过eclipse使用Proguard,现在我已经跨过了,我遇到了以下错误。错误:ProGuard:[myApp]Warning:com.google.android.gms.auth.GoogleAuthUtil:can'tfindreferencedfield'intauth_client_availability_notification_title'inclasscom.google.android.gms.R$stringProGuard:[myApp]Warning:com.google.androi
Proguard不能与iText库一起使用。错误与org.spongycaSTLe.**org.bouncycaSTLe.*和com.itext.pdf.**有关我试过在这些包上使用keep但没有成功。我的proguard配置文件是这样的:-optimizations!code/simplification/arithmetic,!code/simplification/cast,!field/*,!class/merging/*-optimizationpasses5-allowaccessmodification-dontpreverify-dontusemixedcaseclas