proguard相关内容
我在我的应用程序中使用R8,并且具有几个自定义视图(在xml布局中引用),它们的名称完全没有混淆.有什么办法可以做到这一点?我正在使用标准的Gradle规则: 版本{minifyEnabled是rinkResources trueproguardFiles getDefaultProguardFile('proguard-android-optimize.txt'),'proguard-rule
..
关于此问题,我已经看到了几个问题,但它们是针对Netty的较早版本的. 我尝试了他们的答案,将org.jboss.netty与io.netty切换了出去,但是发生了同样的错误. 我正在尝试编译一个使用启用了Proguard的Netty 5.0.0Alpha2(内部版本16)的Android应用. 没有Proguard,应用程序运行正常. 启用Proguard后,在尝试使用Netty
..
将我的android项目升级到androidX后,出现以下构建错误: org.gradle.execution.MultipleBuildFailures:构建完成,但有1个失败.在org.gradle.initialization.DefaultGradleLauncher $ ExecuteTasks.run(DefaultGradleLauncher.java:358)在org.grad
..
我有一个定期任务,每15分钟运行一次. 保护应用程序时.如果该应用被后台杀死,则工作管理器将无法工作. 测试设备:一加7T,诺基亚5+,谷歌Pixel 2仿真器 仅当应用程序在前台或后台时,工作管理器才会执行. 禁用proguard Work Manager可以在所有3种情况下工作 该应用位于前台 后台运行的应用程序 该应用被从后台杀死 根据我在“>
..
我想强迫ProGuard不要只混淆少数几个类. 这怎么办?请提供实际的示例代码,因为我在网上没有找到类似的东西. 解决方案 对于那些关心的人,这是如何完成的: -保持班级!com.mypackage.classA,!com.mypackage.classB {*;} 等...
..
在我的应用程序中,我具有很多未使用的方法字段和类的库项目依赖项.由于这是第三方库,因此我不想自己删除所有未使用的类和方法,因为它是将来的更新.我正在尝试为此使用proguard,但是 -dontobfuscate 仅将整个项目排除在任何缩小和模糊的优化中.是否可以跳过混淆步骤? 解决方案 通常应将ProGuard应用于您的应用及其库的组合.就缩小,优化和混淆而言,这提供了最佳结果.
..
等级ver:3.4.1 JDK版本:1.8 Proguard版本:5.3.3 Android gradle插件2.3.+ 由于proguard,我在构建时遇到异常.我也尝试过proguard 5.3.2,但没有成功. 这是我的发布配置 版本{可调试的假android.buildTypes.release.proguardFiles = []proguardFile'proguard
..
在proguard.cfg中排除父软件包后,如何包含某些软件包: 例如: -keep com.myapp.** {*;} 我希望Proguard混淆com.myapp.data.** {*;} 解决方案 您可以将ProGuard样式的正则表达式用作类名: -保持类!com.myapp.data.**,com.myapp.** {*;}
..
我发现了 ProGuard ,并设法使我的代码变得混乱.有用.很棒的工具. 但是ProGuard没有混淆的是 AndroidManifest.xml .我的清单中有一个Google Maps API密钥. 我使用我的程序包名称和SHA-1指纹在Google Developer Console中“保护"了该API密钥. 是否还是建议混淆清单中的api密钥?如果是这样,我如何使用 P
..
我在GSON库中使用以下Proguard配置: #Gson在使用字段时会使用存储在类文件中的泛型类型信息.保卫者#默认情况下会删除此类信息,因此请将其配置为保留所有信息.-keepattributes签名#用于使用GSON @Expose注释-keepattributes *注释*#Gson特定类别-保持类sun.misc.Unsafe {*;}#-keep com.google.gson.st
..
我需要使所有模型类保持一致,因此我在proguard规则中添加了以下行以保留所有模型类: -保持类my_package_name.model.** {*;} 此命令将保留所有模型类,但是仍然混淆了模型类内部的注释.我尝试添加以下行: -keepattributes *注释*-keepattributes封装方法 但是结果还是一样.我的模型类包含以下两个注释: @Serialize
..
我从崩溃报告系统中获得了一个堆栈跟踪,它像 那样被混淆了 ...无法解决以下问题:Lru/test/c/b/a;... 我有一个映射文件. 如何使用mapping.txt对这个堆栈跟踪进行模糊处理? 解决方案 从应用程序页面获取模糊的崩溃堆栈跟踪 通过以下步骤将您的mapping.txt上传到您的应用PlayStore页面: 登录到您的Play控制台. 选
..
我想知道是否有人对使用proguard混淆了他们的leiningen编译过的uberjars有任何经验.我已经尽力在Google上寻找解决方案,但找不到真正的答案.我想知道这是否完全可能. 我一直试图混淆默认的lein项目.这是core.clj文件: (ns proguard.core(:gen-class))(defn -main“我没有做很多事情."[&args](println“您好
..
我正在尝试找出如何使用R8保留原始行号. 使用当前的AndroidStudio开发应用程序并使用R8对其进行混淆,甚至将 mapping.txt 文件上传至Google Play控制台,在某些情况下,用户的堆栈跟踪都是无用的,因为崩溃与真正的未混淆文件中的崩溃不同. 这是一个示例,我的班级没有3000行,但是在3052行中报告了错误( com.mypackage.activities.
..
我正在尝试使用 minifyEnabled true 生成一个库,但是,在版本.aar中,classes.jar变空了. 我已经检查了我的 proguard-rules.pro ,看来还可以. 我什至用默认的.gradle文件创建了一个新模块,当我将 minifyEnable设置为true 时,发行版仍会获取没有类的class.jar. 毕竟,是否可以生成一个使代码模糊的andr
..
我发现了文章,其中引入了将字典条目随机化的概念在混淆时,不要为类名和变量使用标准的"a,b,c,...".他解释说,可以在构建时在gradle中运行任务以生成随机文本文件,该文件可以替换默认提供的文件: tasks.whenTaskAdded {currentTask->//Android Gradle插件将来可能会更改此任务名称def prefix ='transformClassesAnd
..
添加glide v4库后,我无法在启用了proguard的情况下生成apk.我在保护规则中添加了以下几行 -keep公共类*实现com.bumptech.glide.module.GlideModule-keep公共类*扩展com.bumptech.glide.AppGlideModule-keep public enum com.bumptech.glide.load.resource.bi
..
我的应用程序仅在Android 4.4上因此错误而崩溃 致命异常:nTa:java.lang.IllegalAccessError:尝试从类Patient.healofy.vivoiz.com.healofy.userprofile.contactsync.ContactSyncManager访问类dUa $ a []在io.reactivex.plugins.RxJavaPlugins.o
..
每个人,我都试图用Android Studio,Firts生成一个已签名的APK文件,我将“构建变体"从调试更改为发布,然后在grade.app minifyEnabled上我设置为真,最后我创建了我的密钥并我的密码,直到这里一切都没问题,但是在我最后一次点击时,Android studio尝试生成文件,但此消息出现了 警告:com.google.android.gms.auth.Googl
..
关于此的文档非常差.我了解可以通过在项目的rot目录中手动编辑"default.properties"来启用ProGuard.并且所有设置都放在同一位置的"proguard.cfg"文件中,但是我想知道正在使用哪个版本的ProGuard(我正在使用Eclise Indigo).每当发布时,我也希望能够将其升级到最新版本.但是我找不到任何参考资料. 解决方案 ProGuard jar位于An
..