我正在构建一个android库,我使用的是一个实用程序类,其中所有方法都是静态的 . 此类在内部使用,不应由库用户使用 . 我正在使用proguard来混淆代码,我不想暴露实用程序类 . 当我使用proguard时,它会保留类名,并对其中的方法进行模糊处理 . 我没有用-keep特别排除那个 class .

这是我的proguard配置的通用部分

-keepparameternames

-renamesourcefileattribute SourceFile

-keepattributes Exceptions,InnerClasses,Signature,Deprecated,SourceFile,LineNumberTable,EnclosingMethod,MethodParameters,LocalVariableTable,LocalVariableTypeTable

//Preserve all annotations.

-keepattributes *Annotation*

// Preserve all .class method names.

-keepclassmembernames class * {

java.lang.Class class$(java.lang.String);

java.lang.Class class$(java.lang.String, boolean);

}

// Preserve all native method names and the names of their classes.

-keepclasseswithmembernames class * {

native ;

}

// Preserve the special static methods that are required in all enumeration classes.

-keepclassmembers class * extends java.lang.Enum {

public static **[] values();

public static ** valueOf(java.lang.String);

}

// Explicitly preserve all serialization members. The Serializable interface

// is only a marker interface, so it wouldn't save them.

// You can comment this out if your library doesn't use serialization.

// If your code contains serializable classes that have to be backward

// compatible, please refer to the manual.

-keepclassmembers class * implements java.io.Serializable {

static final long serialVersionUID;

static final java.io.ObjectStreamField[] serialPersistentFields;

private void writeObject(java.io.ObjectOutputStream);

private void readObject(java.io.ObjectInputStream);

java.lang.Object writeReplace();

java.lang.Object readResolve();

}

编辑:“-whyareyoukeeping”说我从另一个类(扩展服务)调用实用程序类中的方法,该类被排除在混淆之外 .

proguard java enum,Proguard没有这么说就不会混淆课堂相关推荐

  1. proguard java enum,ProGuard使用简介

    ProGuard使用简介 背景简介: ProGuard是一个压缩.优化和混淆Java字节码文件的免费的工具,它可以删除无用的类.字段.方法和属性.可以删除没用的注释,最大限度地优化字节码文件.它还可以 ...

  2. proguard java 教程,ProGuard 初探,新手入门必知必会

    1. Start up 下载并安装proguard,当前是5.3.3,解压并将bin所在目录设置到系统环境变量中,接着你就可以使用命令行工具开始ProGuard之旅了. 1.1 @myconfig.p ...

  3. proguard java 教程,[Gradle中文教程系列]-跟我学Gradle-使用proguard混淆你的spring boot应用...

    使用proguard混淆你的spring boot应用 Proguard介绍 安卓开发的同学想必对Proguard都是十分熟悉的,由于java的反编译实在是太容易,使用它可以对java源码进行混淆处理 ...

  4. 深入学习ProGuard之:ProGuard简介与android的应用

    什么是ProGuard 在ProGuard的官网中,关于ProGuard的描述是这样的: ProGuard is a Java class file shrinker, optimizer, obfu ...

  5. 【Android 安全】DEX 加密 ( Proguard 简介 | Proguard 相关网址 | Proguard 混淆配置 )

    文章目录 一.Proguard 简介 二.Proguard 相关网址 三.Proguard 混淆配置 一.Proguard 简介 Android 开发中 Proguard 主要作用是对 Java 代码 ...

  6. 如何使用Java Enum

    简单的用法:JavaEnum简单的用法一般用于代表一组常用常量,可用来代表一类相同类型的常量值.如: 性别: public enum SexEnum {male, female;}颜色: public ...

  7. android enum java包_Android @IntDef注解取代Java enum枚举提高性能详解

    Android @IntDef注解取代Java enum枚举提高性能 为提高Android性能,Android官方建议使用@IntDef注解替代Java的enum枚举.@IntDef的使用给出一个例子 ...

  8. Java Enum 枚举

    Java Enum(枚举)是一个Java类 enum TestEnum{     a("Foo1"),b("Foo2"),c("Foo3") ...

  9. Java Enum学习总结

    2019独角兽企业重金招聘Python工程师标准>>> 1. 关于 Java Enum: 学过 C/C++ 等语言的人,应该都对 Enum 类型略知一二. Enum 一般用来表示一组 ...

最新文章

  1. 时序数据库(TSDB)-为万物互联插上一双翅膀
  2. 深入理解委托——为什么C#要引入委托
  3. iOS10 UI教程视图的生命周期
  4. 怎么向html插入广告,给blogger添加各种广告代码的方法
  5. Python+selenium 自动化-chrome驱动的下载安装
  6. resource.arsc二进制内容解析 之 RES_TABLE_TYPE_TYPE (Config List)
  7. ios java 图片上传到服务器,iOS 图片上传服务器
  8. 数据分析用r还是python_想要从事数据分析,选择python还是R语言呢?
  9. 向eclipse中导入myeclipse项目
  10. 安装pycuda的正确办法
  11. Spring扩展之BeanFactoryPostProcessor接口
  12. Linux 常用命令 权限管理命令
  13. 学NTFS格式磁盘解析及atapi磁盘读写
  14. 论文格式排版技巧(word版)
  15. 关于esp32蓝牙模块的使用——esp32学习笔记
  16. 简易记账开发笔记之GridLayout
  17. IDEA添加maven依赖方法
  18. 蓝代斯克和玖道在华设立合资企业
  19. Java基础二维数组
  20. 汇编语言题库总结及题目分析

热门文章

  1. html获取随机字母,JavaScript实现4位随机验证码的生成
  2. MFC----ListBox用法
  3. 二级菜单打开一个时其他关闭_blender2.8教程 顶部菜单栏
  4. mysql 5.6.15安装图解_Windows8下mysql 5.6.15 安装配置方法图文教程
  5. yapi 界面修改_当Swagger遇上YApi,瞬间高大上了!(一个好用的接口管理工具)...
  6. terminal登录mysql_转载-MySQL之终端(Terminal)管理MySQL
  7. 在线考试 ajax,关于在线考试使用ajax一问?
  8. gensim流式训练word2vec模型,不需要一次性加载完整数据集
  9. 机器学习集成模型ML ens学习——多层模型集成(一)
  10. 解决新安装的Ubuntu18.04没有网络连接的问题