【问题标题】:How to obfuscate only package names using Proguard [duplicate]如何使用 Proguard 仅混淆包名称 [重复]
【发布时间】:2015-07-21 05:22:31
【问题描述】:

我只想在我的应用程序中重命名来自 com.company1.utils --> com.company2.utils 的包名称。

如何使用 ProGuard 做到这一点?除了更改我的包名称之外,我不想在此应用任何优化。

【问题讨论】:

    标签: java proguard obfuscation


    【解决方案1】:

    ProGuard 没有重命名包的标准选项,但保留其简单的类名。

    您可以手动创建一个 ProGuard 映射文件,如下所示:

    com.example.MyClass -> a.MyClass:
    com.example.MyOtherClass -> a.MyOtherClass:
    

    也可以使用这个命令:-applymapping mapping.txt

    https://stackoverflow.com/a/15792982/4960200

    【讨论】:

      【解决方案2】:

      这可能很奇怪,但是由于您的包名称是“utils”并且我们在我们的项目https://github.com/coding-blocks/CBOnlineApp 中遇到了类似的问题,我可以告诉您将我们的包从utils 重命名为util 解决了proguard问题是它会删除整个包。

      这需要更深入的挖掘,但可能是一些内部配置问题导致 proguard 删除名为“utils”的包

      【讨论】:

        猜你喜欢
        • 2010-10-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-11-23
        • 2014-12-06
        • 2011-05-30
        • 2018-02-16
        • 2013-03-06
        相关资源
        最近更新 更多