我是第一次测试Proguard的混淆功能。为此,我做了以下事情下载了CordovaHelloWorldplugin通过将字符串"Thisistopsecret"添加到它发出的问候消息来修改它创建了一个简单的CordovaHelloWorld项目cordovacreate...添加了CordovaProguardplugin将本地源的插件添加到此项目通过附加proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-custom修改了platforms\android\project.properties
我有一个Android应用程序,我只是想用混淆器混淆(因此,我有-dontoptimize-dontshrink-dontpreverify标志)。当我使用Proguard构建时,proguard本身不会抛出任何错误,但是dex会抛出以下异常:Exceptioninthread"pool-1-thread-1"com.android.dx.cf.code.SimException:com.android.dx.rop.cst.CstMethodRefcannotbecasttocom.android.dx.rop.cst.CstInterfaceMethodRefatcom.andro
我不熟悉将Proguard和Dagger用于Android应用程序,所以如果有人能给我一些指导,我将不胜感激。Proguard和Dagger已在应用程序中实现。当应用程序通过Debug模式(即从Eclipse推送)安装时,运行应用程序没有问题。但是,当我运行应用程序的发布版本时,它崩溃并显示以下跟踪:Noinjectablemembersoncom.example.test.d.Doyouwanttoaddaninjectableconstructor?requiredbycom.example.test.dcom.example.test.SampleActivity.aNoinje
在我的android应用程序中,我在libs文件夹中有多个第三方库ex-:httpcore-4.2.4.jar,httpmime-4.2.5.jar,twitter4j-core-4.0.1.jar这些库没有重复,我很确定这一点,但是当我创建proguard版本时,我得到了这个错误(Duplicatezipentry[twitter4j-core-4.0.1.jar:META-INF/MANIFEST.MF])....(Thiserroroccursforallofthelibrary(libs)我引用了这个链接来解决问题,我尝试了它的每一个选项,但没有成功,Proguardwarni
我即将完成我的第一个Android应用程序,我正在尝试找出如何使用ProGuard保护它。我的应用程序最低API是7(Android2.1)。我相信如果我将我的最小API设置为9(Android2.3)但作为lotofdevicesuse2.1and2.2,使用Proguard会很容易。我不想排除他们。我读到的关于在Android上使用Proguard的所有内容似乎都令人困惑和困难(我对Ant脚本一无所知)有人知道在Eclipse上使用ProguardforAndroid的分步指南吗?Proguard值得费心吗? 最佳答案 ProG
我在我的android项目中启用了MultiDex。在我尝试启用proguard之前,它工作正常。我可以成功构建项目,但在启动时出现运行时异常。它找不到Application类和MainActivity。在启用MultiDex之前,我遇到了同样的问题。现在我猜由于某些原因MultiDex不能与ProGuard一起正常工作。这是我在logcat中得到的-02-1719:01:09.749:I/MultiDex(2079):VMwithversion2.1.0hasmultidexsupport02-1719:01:09.749:I/MultiDex(2079):install02-171
我有一个带有数据绑定(bind)ViewModel的多模块项目(我使用AndroidAppBundle)。但是当我启用Proguard时,应用程序崩溃并出现以下错误:java.lang.RuntimeException:UnabletostartactivityComponentInfo{...MyActivity}:java.lang.IllegalStateException:DataBindingUtil.setConte…R.layout.my_activity)mustnotbenullCausedby:java.lang.IllegalStateException:Data
http://developer.android.com/google/play/billing/billing_best_practices.html注意:如果您使用Proguard来混淆代码,则必须将以下行添加到您的Proguard配置文件中:-keepclasscom.android.vending.billing.**问题是:为什么?! 最佳答案 这是一个很好的问题。我们知道为什么必须为某些类禁用混淆,但这并没有回答为什么应该为InAppBillingService禁用混淆的问题。如果检查生成的InAppBillingSer
TLDR:如何将proguard映射传递给javac以针对混淆库进行编译?这很长,但我不知道如何让它更短:背景:我有以下产品设置:AndroidStudio项目-图书馆模块-(子)模块核心-(子)模块A-(子)模块B-(子)模块C-示例应用程序模块-...其他模块每个库子模块A、B、C都引用Core中的类,但A、B、C相互独立。概念上类似于Play服务,其中用户只能拥有代码和所需的子模块。每个库子模块都有外部API,但也有许多内部类目标是能够将Core、A、B、C作为独立的aar-s分发。目标:将所有子模块混淆在一起,只留下公开的API,但以混淆/优化的形式单独打包和分发它们。问题:我
我在我的Android应用程序中运行ButterKnife8.5.1版。如果我尝试为ButterKnife进行ProGuard设置,我的发布版本仍然会崩溃。有一个issueontheofficialButterKnifeGithubpage它告诉您进行以下设置:-keepclassbutterknife.**{*;}-dontwarnbutterknife.internal.**-keepclass**$$ViewBinder{*;}-keepclasseswithmembernamesclass*{@butterknife.*;}-keepclasseswithmembernames