微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Android - Proguard - 数据保护

如何解决Android - Proguard - 数据保护

我是 Android 中 Proguard 的新手,想向社区提问。如果我在应用程序 gradle(模块)中将 minify 和shrink 设置为true,是否会保护我可能在Java 类中定义的任何常量?

例如:

public class References
{
    public static final long RESEND_TIME_LIMIT = 60L;
    public static final int MAX_RESEND = 3;
}

现在,如果我在我的模块级 gradle 文件中设置以下内容

buildTypes 
{
    release {
        minifyEnabled true   // Obfuscate and minify codes
        shrinkResources true // Remove unused resources
        useProguard true     // Remove unused codes
        debuggable false
        proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'),'proguard-rules.pro'
    }
}

现在,这会保护我定义的常量吗?我的意思是,对设备具有根级别访问权限的人是否可以以某种方式更改这些值?

请帮我理解。谢谢。

解决方法

Proguard 不是 100% 安全的代码。它是改变类和变量名。它不是改变你定义的常量的值。

为了保护您的常量,您必须使用本机 C++ 库。有关详细信息,请参阅此 doc

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。