在 LibGdx Game -module core- 中隐藏重要的字符串

Posted

技术标签:

【中文标题】在 LibGdx Game -module core- 中隐藏重要的字符串【英文标题】:Hide important Strings in LibGdx Game -module core- 【发布时间】:2018-08-17 07:56:53 【问题描述】:

我需要在 My LibGdx Game 的模块 core 中隐藏一些重要的字符串

public class MyStrings 


public static String Key1 = "XXXXXXXXXXXXXXX";
public static String Key2 = "XXXXXXXXXX";
public static String Key3 = "XXXXXXXXXXXXXXXXXXXX";
....

我尝试使用Gradle 方法,但我无法使用BuildConfig。我也不能使用Base64.decode......ProGuard 没有帮助,我想我也不能使用 C/C++ 方式。

请帮忙。

【问题讨论】:

通常我在阅读此类问题时的第一反应是“为什么需要这样做?” - 这些字符串究竟代表了什么,它们需要保密并且在您发送给客户的二进制文件中? 我只需要让逆向工程师的事情变得更难 简单的混淆足够了吗?看这里:***.com/questions/16384444/…? 【参考方案1】:

您正在寻找的混淆功能是String Encryption,正如您所说的is not supported by ProGuard。其他混淆器,例如 DashO、KlassMaster 和 DexGuard(仅适用于 android)确实支持此功能。

或者,正如@RobAu 建议的那样,您可以write your own solution。

全面披露:我在生产 DashO 的公司 PreEmptive Solutions 工作。

【讨论】:

以上是关于在 LibGdx Game -module core- 中隐藏重要的字符串的主要内容,如果未能解决你的问题,请参考以下文章

Google Play Game Services 和 LibGDX,如何在不显示标题栏的情况下集成?

libgdx android 启动失败

Java Libgdx 正确省略了 gwt 构建的类引用

如何在 libGDX 上保存高分

在 LibGDX 中使用 FMOD 进行高级音频管理

libgdx上的无限滚动背景