我有一个Android应用程序,使用Gradle构建,启用了ProGuard。不幸的是,ProGuard不会混淆字符串。我知道有其他商业解决方案提供此功能,但我不想使用商业产品。
我在Android应用程序中创建了我的混淆/反混淆算法作为Java类,因此我可以在应用程序中在运行时对字符串进行反混淆。
我想知道的是,在构建时使用Gradle能够使用上述算法对某些字符串进行模糊处理。
我的想法是将一个带有我的字符串的JSON文件清除,并有一个自定义的Gradle任务来解析它们,混淆(如果该类是一个Java类???),并将混淆的值添加为BuildConfig字段或XML资源(通过在生成的xml文件中附加/替换它们)。
问题是:
你有解决方案吗? 你知道其他商业产品是怎么做的吗?
注意:我非常清楚加密和混淆之间的区别及其限制。目标不是保护应用程序,我只是想减慢任何随意的好奇心,保持简单。