我在android应用程序中使用混淆器。需要加上这个才能使代码混淆,难以逆向。我在导出apk时遇到了这个问题。即使我使用-dontskipnonpubliclibraryclassmembers,Proguard也会发出警告。我不确定我还需要做些什么来解决这个问题。请协助并提前致谢。[2014-08-1415:48:28-]Warning:com.example.android.PaymentGateway:can'tfindreferencedfield'intcontainer_pg'inclasscom.example.android.R$id[2014-08-1415:48:2
我想知道最强大的混淆工具是什么(避免逆向工程):在R8和ProGuard之间在R8和DexGuard之间谢谢。 最佳答案 R8是一个APK缩小工具,试图使代码难以逆向工程并不是我们的目标。术语“混淆”继承自ProGuard,但在代码库内部使用术语“缩小”。 关于java-Android/Java混淆:R8vs(ProGuardorDexGuard)?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/q
我想防止我的应用程序被其他人反向工程和反编译。如何在我的项目中激活混淆器以帮助我实现这一目标?-keeppublicclass*extendsandroid.view.View{public(android.content.Context);public(android.content.Context,android.util.AttributeSet);public(android.content.Context,android.util.AttributeSet,int);publicvoidset*(...);}-keepclasseswithmembersclass*{publ
我正在尝试使用Proguard混淆我的Android应用程序,该应用程序使用库jsch-1.50.jar将文件上传到SFTP服务器。当我从Eclipse进行导出时,我收到警告“无法引用类”并且没有生成任何内容。我已经尝试了各种选项来告诉Proguard忽略jsch类,但这没有任何区别,因此我想知道我是否误解了它是如何工作的。我不太担心优化,但我希望混淆代码。我已经设置了proguard-properties如下:-keepclasscom.jcraft.jsch.jce.*-keepclass*extendscom.jcraft.jsch.KeyExchange-keepclassco
我正在尝试为GooglePlay商店构建我的Android应用程序的新版本。我收到以下构建错误。MyApp]Proguardreturnedwitherrorcode1.SeeconsoleMyApp]Warning:bolts.Executors:can'tfindreferencedmethod'voidallowCoreThreadTimeOut(boolean)'inclassjava.util.concurrent.ThreadPoolExecutorMyApp]Warning:bolts.WebViewAppLinkResolver$2$2:can'tfindreferen
这个问题已经被问过很多次了,但我无法解决。我正在尝试使用eclipse导出我的应用程序以进行最终发布,但我收到以下错误。我添加了其他人在其他链接中建议的所有条目,但没有帮助。请帮助我如何摆脱这个错误。Proguardreturnedwitherrorcode1.Seeconsole[2014-08-2411:21:11-]Note:therewere1035duplicateclassdefinitions.[2014-08-2411:21:11-]Warning:com.google.api.client.extensions.jdo.JdoDataStoreFactory$JdoV
我正在使用Proguard来缩减我的代码。我的策略是启用它,然后按照警告保留它提示的任何内容。如果有外部库,我会尝试遵循作者提供的Proguard说明。许多指令包含一个-dontwarn标志。如果我禁用-dontwarn标志,我将收到警告。如果我们通过-keep标志保留大多数类,为什么仍然会出现警告?示例:-keepclassjavax.**{*;}#forbutterknife-keepclassbutterknife.**{*;}-dontwarnbutterknife.internal.**-keepclass**$$ViewBinder{*;}-keepclasseswithm
在我的Android应用程序中,我正在以Release模式构建。激活Proguard会导致一个罕见的问题,一个特定的for循环永远不会被执行:ListobjectList=getObjectList();Log.d("Step1",String.valueOf(objectList.size()));//Printsize>0for(MyClassobject:objectList){Log.d("Step2",object.toString());//Neverprinted...}正确打印“第1步”日志并且objectList.size()>0。我不明白是什么导致“第2步”日志从未
我从ExtractDecodeEditEncodeMuxTest.java复制了代码进入我的应用程序以转码视频,最重要的变化是将类重命名为VideoTranscoder并删除extendsAndroidTestCase因为我要运行它脱离任何Activity.一切正常,直到我使用proguard编译发布版本,然后它在运行时失败:E/d:com.testapp.a.g.a.b.b(OutputSurface.java:270)E/d:com.testapp.a.g.a.d.a(VideoTranscoder.java:944)E/d:com.testapp.a.g.a.d.a(VideoT
添加glidev4库后,我无法生成启用了proguard的apk。我在proguard-rules中添加了以下几行-keeppublicclass*implementscom.bumptech.glide.module.GlideModule-keeppublicclass*extendscom.bumptech.glide.AppGlideModule-keeppublicenumcom.bumptech.glide.load.resource.bitmap.ImageHeaderParser$**{**[]$VALUES;public*;}构建时显示以下错误。Warning:com