如何在android中混淆整个代码甚至清单文件?

时间:2016-10-06 10:01:14

标签: android android-studio

正在使用一些机密数据开发android应用程序。我需要对代码进行模糊处理。我已经搜索了很长时间的解决方案,但仍然没有得到解决方案。

2 个答案:

答案 0 :(得分:0)

在您的应用级别build.gradle中使用minifyEnabled true

答案 1 :(得分:0)

你有几种方法可以做到这一点。您可以轻松地在应用程序中集成的那个是使用proguard规则和gradle。

使用您认为合适的规格定义您的proguard-rules.pro。下面是一个解释大多数用法的链接

http://proguard.sourceforge.net/manual/usage.html

之后,在顶层应用程序模块的构建gradle中,如果您有一个依赖树,请添加:

def read_items(filename):
    with open(filename) as fh:
        return {line.strip() for line in fh}

def diff_string(old, new):
    return "\n".join(
        ['[-] %s' % gone for gone in old - new] +
        ['[+] %s' % added for added in new - old]
    )

with open('diff.txt', 'w') as fh:
    fh.write(diff_string(read_items('1.txt'), read_items('2.txt')))

在这种情况下,每次运行应用程序的发布版本时,它都会运行您的proguard文件配置。考虑到proguard不会混淆活动的名称。