当前位置:首页 > Android > 教程 > 正文内容

Android APK加固(加壳)工具

jsc7年前 (2018-07-22)教程6796

测试点评

  • APK Protect是一款Android APK加密服务,PC Edition免费,其他高级版收费。

  • 服务支持Android 2.1-4.2。

  • 对于APK而言,使用PC Edition加密后其体积增加30-50KB,影响较小。

  • 企业版同时提供Java和C++代码的加密。

  • 提供加密操作程和视频教程(英文)。

  • 更新比较及时,目前最高支持Android 4.2。

开发建议

  • APK Protect的免费版(PC Edition)只能保护Java代码,可以满足开发者的部分需求。

  • APK Protect的高级版本均需付费,且已经停止提供免费试用,加密C++代码需要使用最高级的企业版。

  • 服务不提供中文支持,对开发者的英语水平有一定要求。

集成过程

加固流程

(1)选择版本:有多个版本,此处选用免费版(APK Protect PC Edition)。 

111111111111111.png

我把软件也上传到CSDN服务器,下载地址。 
下载后解压目录如下: 

222222222222222.png

(2)目标应用:SplashAct.apk

(3)加密过程: 
无需安装,解压后直接运行apkcrypt.exe; 
选择需要加密的APK; 
指定生成目标的名字; 
点击按钮开始加密,软件会在同一目录下生成加密后的APK。 

3333333333333333.png

加密前:18823KB 
加密后:18885KB 

444444.png

注:点击开始后,可能会弹出错误信息:The application need Java jre , please install jre and retry 
解决办法:由于电脑是64位的,我只安装了64位的jre,再去装个32位的jre就可以了

重新签名

获取到加固之后的APK文件,这时还不能立即安装,会提示APK未签名,所以我们需要使用签名工具对其进行签名。 
步骤:将刚才生成的加固后的APK文件和keystore放在同一目录下,使用命令行进行签名。 
jarsigner -verbose -keystore eastday_sign.keystore -signedjar SplashAct_signed.apk SplashAct.apk eastday 
说明: 
-verbose 输出签名的详细信息 
-keystore eastday_sign.keystore 使用key的绝对路径 
-signedjar SplashAct_signed.apk SplashAct.apk eastday 正式签名,三个参数中依次为签名后产生的文件SplashAct_signed.apk ,要签名的文件SplashAct.apk和密钥库(也就是alias)eastday 

5555.png

签名成功,在相同目录下会生成签名后的APK文件。

6666.png

zipalign(压缩对齐)优化

签名之后的APK文件现在已经可以安装到手机上了,不过在此之前Android还极度建议我们对签名后的APK文件进行一次对齐操作,因为这样可以使得我们的程序在Android系统中运行得更快。对齐操作使用的是zipalign工具,该工具存放于<\Android SDK>/build-tools/目录下,将这个目录配置到系统环境变量当中就可以在任何位置执行此命令了。命令格式如下: 
zipalign -v 4 SplashAct_signed.apk SplashAct_aligned.apk

压缩对齐成功,在相同目录下会生成对齐后的APK文件。 

12121.png

反编译" style="box-sizing: border-box; outline: 0px; padding: 0px; margin: 8px 0px 16px; font-size: 28px; color: rgb(79, 79, 79); line-height: 36px; word-break: break-all; font-family: -apple-system, "SF UI Text", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif, SimHei, SimSun; white-space: normal; background-color: rgb(255, 255, 255);">反编译

关于反编译APK不熟悉的同学请看我的这篇文章Android APK的反编译和重新打包。 
我们将刚刚加固之后的APK文件(SplashAct_signed.apk或SplashAct_aligned.apk)进行反编译,会报错: 

1233.png

注:关于APK加固的原理有兴趣的同学可以看看这篇文章,Android中的Apk的加固(加壳)原理解析和实现

用gui工具看反编译后代码也是看不了的,说明APK已经被成功加固了。 

凄凄切切群群群群群群.png

转自https://blog.csdn.net/huaxun66/article/details/53484567

扫描二维码推送至手机访问。

版权声明:本文由微小站发布,如需转载请注明出处。

本文链接:https://jsc0.com/post/163.html

分享给朋友:

“Android APK加固(加壳)工具” 的相关文章

Android仿今日头条详情页实现

Android仿今日头条详情页实现

Android仿今日头条详情页实现 github源码地址   最近项目有个需求,需要实现一个和今日头条新闻详情页一样的体验。上部分是webview来展示新闻内容,下半部分是listview来展示评论区,可无限加载更多。起初的实现思路是 将webview放置在listview头部,...

android 获取webview内容真实高度(webview上下可滚动距离)

正常获取:mainWebView.getContentHeight()//获取html高度mainWebView.getScale()//手机上网页缩放比例mainWebView.getHeight()//WebView控件的高度 mainWebView.getContentHeight(...

基于RxJava2的RxBus,打造属于你自己的EventBus

基于RxJava2的RxBus,打造属于你自己的EventBus

前言由于最近在学RxJava2,同样避免不了使用Rxbus,但是RxJava1到RxJava2还是有很大的变化的,例如:在 2.x 中 Observable 不支持背压了,将用一个全新的 Flowable 来支持背压,Consumer和BiConsumer对Action1 和Action2进行了替换...

android后台通过View生成分享图片

android后台通过View生成分享图片

原文地址:http://www.jianshu.com/p/33e30da0385c最近工作特忙,好久没静下心总结一些开发中的心得,后面会陆续写一些文章总结一下最近遇到的问题和一些收获吧~闲话少说,今天想跟大家分享的是,在android中,如何后台将一个view绘制成图片,并简单梳理下其中遇到的坑。...

调用android自带分享功能,分享图片文字等信息。

/**  * 调用系统的分享功能  * Created by admin on 15-4-13.  */ publicclass ShareActivity extendsActiv...