android 代码签名apk,[Android]混淆代码后生成带签名的apk
Android从2.3的SDK开始,将ProGuard混淆代码的功能加入了进来。
我们可以从android sdk的tools目录下看到有一个proguard目录。说明具有了代码混淆的功能。
至于如何进行代码的混淆。我们需要做的很简单:
1、在用eclipse生成的android工程中都有一个project.properties文件,我们需要在该文件中增加下面一行代码:
proguard.config=proguard.cfg
如图所示:
2、写混淆脚本proguard.cfg
我测试用的混淆脚本非常简单,只加了优化功能。如图所示:
我们可以看到混淆android代码非常容易,但是需要注意的是:在eclipse下通过Run执行来生成的bin目录下的apk文件并没有被混淆,只有通过加入证书发布的apk才会混淆。
下面,我们来看看如何打包签名apk。
1、生成keystore;
在生成签名apk前,我们需要keystore,这个keystore可以用jdk下的keytool工具生成。
在cmd下,用命令行生成keystore如图所示:
按照上图中的命令,输入需要输入的内容。
其中,-alias android.keystore是生成的keystore别名;
-keyalg RSA是加密和数字签名的算法;
-validity 20000是有效天数
最后,会在jdk的bin目录下生成android.keystore文件。(这是因为keytool命令在jdk的bin目录下,当然,这个可以通过环境变量来设置)。
2、用keystore生成签名apk。
我们有了keystore,就可以生成签名apk了。
Eclipse中,右键需要签名的工程->Android tools->export signed application package...
这时会出现以下对话框:
点击下一步:
键入密码,点击Next:
键入密码,再次点击Next:
最后,点击Finish即可。
这时会在jdk的bin目录下生成带签名的apk。
下面是将我在github上的androidexample工程混淆了,效果如下:
最后,我们看运行混淆后的输出文件,在工程中会有生成的proguard文件夹,里面的文件具体内容是:
dump.txt
描述.apk包中所有class文件的内部结构。
mapping.txt
列出了源代码与混淆后的类,方法和属性名字之间的映射。这个文件对于在构建之后得到的bug报告是有用的,因为它把混淆的堆栈跟踪信息反翻译为源代码中的类,方法和成员名字。
seeds.txt
列出那些未混淆的类和成员。
usage.txt
列出从.apk中剥离的代码。
这些文件放在以下目录中:
l/bin/proguard当你使用Ant时
l/proguard当你使用Eclipse时
android 代码签名apk,[Android]混淆代码后生成带签名的apk相关推荐
- vue生成带签名的apk
昨天说到生成签名证书,今天就是最后一步了,生成带签名的apk.啦啦啦~~ 生成带签名的apk有两种方式,一种是先生成debug版本,再加上数字签名证书然后生成带签名的APK.另外一种是直接一条命令生成 ...
- java ADT生成带签名的apk
1.生成签名文件 cmd cd到jdk目录下的bin目录. 运行命令: c:\Program Files\Java\jdk1.8.0_05\bin>"keytool.exe" ...
- android运行ipa,AIR 命令行打包 ipa和apk (air adt 生成 带运行环境 apk ipa)
最近使用了一下命令行 ADT打包移动程序,效率不错留个记号 在这之前首先需要AIR3.0以上SDK,然后配置环境变量(在 lib/android/bin 文件夹中)我只配置了 Path 环境变量 然后 ...
- apk一键脱壳工具_miui11自带应用商店apk下载-miui11自带应用商店下载最新官方版 v1.4.5...
miui11自带应用商店apk是一款专为支持miui系统安卓机打造的应用管理工具,需要尝试各种全新应用和游戏的话,都可以在线查找并下载哦,为了便于你们去查找内容,这里所有的应用都是有大分类的,还有下载 ...
- java和签名工具_java 证书工具keytool生成自签名证书和自签CA证书
jdk自带的证书管理工具叫keytool,在jdk/bin目录下,可以用来生成自签名证书.导入导出证书.打印证书信息等. 1. 名词 自签名证书:用自己的私钥签发自己的公钥即主体信息生成的证书. 证书 ...
- c语言链表输出header中的乱码,大家帮忙看看这段代码,最后一个链表输出后总带一些乱码?请教...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include "Stdio.h" #include "Conio.h" typedef struct list ...
- android mm 修改路径,Android 编译系统模块
在开发过程中,尤其是Framework相关开发时,有时候需要重新编译资源文件.编译顺序和注意事项如下: 1,资源文件位置:frameworks/base/core/res 2,编译后生成的文件:fra ...
- PC网站微信扫码支付,Native支付,“当前商户号暂不支持关联该类型的appid“,“签名错误,请检查后再试““springBoot 微信支付“
springBoot 微信支付 PC网站微信扫码支付-Native支付 一.采坑大合集 1.当前商户号暂不支持关联该类型的appid 2.签名错误,请检查后再试 二.springboot集成微信支付D ...
- android studio防止反编译,防反编译利器-Android studio混淆代码压缩apk包体积
前言 打包混淆对初学者小冷来说是很抗拒的,刚开始我只是知道在build.gradle文件 minifyEnabled下设置为true,可是proguard-rules.pro文件里面什么都没有,就这样 ...
最新文章
- 物体计数--Learning To Count Objects in Images
- [每日短篇] 1D - 消除 if 的一种方法
- Java中的5种同步辅助类
- 给一份Webservice接口通用实现!!
- pb界面框架开发_CATIA CAA二次开发草图界面框架类:CATSketcherCommands
- Java多态提现_Java中的多态的一些体现,重写和包装类
- 动易 dw css不对,动易2019后台管理编辑器后台无法插入任何东西..._网络编辑_帮考网...
- 【MySQL 5.7 】从库1032 报错处理
- [转][Python小记] 通俗的理解闭包 闭包能帮我们做什么?
- swfupload ajax,swfupload ajax无刷新上传图片实例代码
- 运维祈求不宕机_一份运维监控的终极秘籍!监控不到位,宕机两行泪
- 惠普笔记本LED灯闪烁代码故障含义
- 【2022-05-31】JS逆向之易企秀
- RSA算法实现(Python版)
- iOS——JSONModel数据解析
- 【akka】Akka源码分析-local-DeathWatch
- Win软件 - 这可能是首款能在电脑上控制 iPhone 的工具
- ARM_UART 串行通讯基础知识及编程
- 二级mysql真题_计算机二级MySQL数据库真题
- 自己弄了个数字币量化分析软件,感兴趣的朋友自己下载