我开发Android应用程序,其中一些代码非常私密和保密。我在我的代码中加密算法以提高安全性。
但是最近我读到,当人们拥有.apk文件时,他们可以使用100%正确Source提取java源代码。
不仅如此,人们还可以从Google Play商店获取.apk Source
是否意味着拥有我的.apk的人可以查看我的所有源代码(java,.xml布局,库)?如果是的话,我的所有努力都没有实现安全的应用程序。
答案 0 :(得分:3)
是的,希望有一种方法可以阻止他人获得你的艰苦劳动项目(function() {
console.log('IIFE Fired.');
var button = document.querySelector('button');
button.addEventListener("click", clickHandler);
function clickHandler() {
console.log(this.id);
}
}());
。
为您的Android应用程序启用full source code
。 ProGuard
会致电ant
来混淆您的代码。
您的代码将尽可能地缩小。许多函数和变量名称将替换为任何人都无法解码或理解的缩小形式:)
详情请见https://developer.android.com/studio/build/shrink-code.html
ProGuard
答案 1 :(得分:2)
此过程称为 Android Reverse Engeneering 。正如@ ash12所说,您可以使用ProGuard来混淆您的源代码。但是,如果你在源代码中存储你的应用程序凭证,如api令牌,密码等,那将是一个严重的安全妥协。
另外,您可以查看DexGuard,这是ProGuard的商业变体。它还允许您加密布局文件并模糊清单和其他资源文件的内容(以及许多其他内容)。