android 代码混淆、压缩文件破解真能防反编译?

android 代码混淆、压缩文件破解真能防反编译?,第1张

很早以前安卓是很容易被破解的,后来谷歌意识到了这个问题,就多了一个proguard.cfg文件,就是用来混淆代码的,这在一定程度上阻止了apk被反编译。不过现在的反编译越来越厉害了,普通的代码混淆对于APK反编译没有效果了。现在要真正做到做apk反编译,要保护dex文件、so库文件、以及防止内存数据被静态、动态抓取等等,一般都是通过密码算法给dex加壳隐藏、对源码使用高级混淆、签名效验、使用花指令、对so文件使用算法加密等。这些单独一项可能还达不到较安全的保护,但是综合起来就会达到一个相对很高的安全层次。如果觉得麻烦,可以尝试用一下第三方APP加密如爱加密,今天上传,第二天就能拿到加固后的apk,很方便的。

一般Android项目从Eclipse导入至AndroidStudio(以下简称AS)后,会出现各种问题,最主要的就是“gradle”目前为止还不支持.so库文件打包入apk。也就是说,如果你用的第三方库中包含.so文件(一般是libs\armeabi\xxx.so),那么只要在代码中出现“System.loadLibrary("xxx")等代码出现,一定会在这里抛出异常UnsatisfiedLinkError。解决方案如下:根据我Google了2天的结果,一个比较满意且所有出现这个问题的人都可行的方案是:1)在硬盘任意位置建立空文件夹"lib"(注意名字是"lib"而不是"libs")2)把原来的libs目录下的armeabi文件夹拷贝至刚建立的lib目录下.(armeabi文件夹中的.so文件也会被一并拷入)3)将刚建立的"lib"目录打包压缩成.zip文件,同时改名为“armeabi.jar"4)将armeabi.jar放入原来的libs目录下(和其他第三方jar包放在一起)经过这4步之后,只需要再重新更新下AS的第三方库,就OK了.


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/tougao/11847861.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-19
下一篇2023-05-19

发表评论

登录后才能评论

评论列表(0条)

    保存