反编译android应用,降低权限去广告及重新签名

功能:反编译apk降低权限及重新签名

场景:很多软件,申请了一些可能会导致付费(如,发短信,呼叫号码)或者泄漏隐私(如:读取通讯录)的权限,让人很不放心。比如:飞信、墨迹天气、iReader等都在此列。为了让自己能放心使用,需要做一些破解工作,减少该应用程序的权限,限制其操作。

工具:apktool-install-windows-2.2_r01-3.tar.bz2
(http://code.google.com/p/android-apktool/downloads/list)

工具:(JDK) keytool.exe 生成签名的密钥库

工具:(JDK) jarsigner.exe 用于对apk做签名

工具:(可选)D:\android-sdk-windows\tools\zipalign.exe
对打包的应用程序进行优化,使得在运行时Android与应用程序间的交互更加有效率。

操作:

1,反编译APK文件 demo.apk 到 demo 目录

apktool.bat d demo.apk demo

2,修改。。。

2.1 减少权限:修改demo 目录 demoAndroidManifest.xml
文件,找到 标签,注释掉不需要的权限。(参考:http://hb.qq.com/a/20101115/001156.htm
开发者不得不知的Android权限说明)

2.2 去掉广告:如 Smart Monitor Pro_2.3.16.apk

android:layout_width="fill_parent"

android:layout_height="wrap_content"

app:keywords="girl friends monitor women sex

adult gift electron wallpaper ring

shirt Android application game

sport football soccer world cup"

/>

改为

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:width="1dip"

android:height="1dip" app:keywords="" />

2.3 去掉广告:如 Hi-MSN.apk

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:layout_alignParentBottom="true" />

改为:

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:layout_alignParentBottom="true"

android:width="1dip"

android:height="1dip" />

3,重新将 demo 目录编译成 apk 文件

apktool.bat b demo

4,找到 demo\dist 目录下的 demo.apk 改名为 demo_unsign.apk

5,(可选)修改apksigner.input.txt
文件内容,用于生成密钥对和证书,给apk签名。如果已经存在,则无需修改。(修改apksigner.bat 去掉下行的注释)

type apksigner.input.txt | keytool -genkey -alias %JKS% -keystore %JKS%
-storepass %PWD% -keypass %PWD% -keyalg RSA -validity 20000

6,修改 apksigner.bat 脚本中的设置(set APP=demo)后,执行apksigner.bat 对 demo_unsign.apk
签名,生成 demo_signed_final.apk 文件。

7,在手机上删除原版 apk 应用,重新安装 demo_signed_final.apk

---------------------------------------- ### apksigner.bat 文件

@rem ### apksigner.bat

@rem http://www.cnblogs.com/qianxudetianxia/archive/2011/04/09/2010468.html
Android学习系列(1)--为App签名(为apk签名)

@rem http://www.blogjava.net/zhaojianhua/archive/2011/06/23/352887.html
Android APK 签名

@set JKS=android.keystore

@set PWD=111111

@set APP=demo

@set APK0=%APP%_unsign.apk

@set OUT1=%APP%_signed.apk

@set OUT2=%APP%_signed_final.apk

@rem type apksigner.input.txt | keytool -genkey -alias %JKS% -keystore %JKS%
-storepass %PWD% -keypass %PWD% -keyalg RSA -validity 20000

@if exist %OUT1% del %OUT1%

@if exist %OUT2% del %OUT2%

@echo ##########################

@echo ### Signer.0 ### %APK%.apk

@echo ##########################

@jarsigner.exe -verbose -keystore %JKS% -storepass %PWD% -keypass %PWD%
-signedjar %OUT1% %APK0% %JKS%

@jarsigner.exe -verify %OUT1%

@echo ##########################

@echo ### Signer.1 ### %OUT1%

@echo ##########################

@D:\android-sdk-windows\tools\zipalign.exe -v 4 %OUT1% %OUT2%

@jarsigner.exe -verify %OUT2%

@echo ##########################

@echo ### Signer.2 ### %OUT2%

@echo ##########################

@pause

---------------------------------------- apksigner.input.txt 文件

username

org

org

beijing

beijing

cn

y

反编译android应用,降低权限去广告及重新签名,布布扣,bubuko.com

时间: 2024-10-27 01:31:48

反编译android应用,降低权限去广告及重新签名的相关文章

MAC上反编译android apk---apktool, dex2jar, jd-jui安装使用(含手动签名)

前文 介绍了在Windows平台利用强大的APK-Multi-Tool进行反编译apk,修改smali源码后再回编译成apk的流程,最近受人之托,破解个apk,所幸的是所用到的这三个软件都是跨平台的,mac上也妥妥的.这里记录下在mac上所用的东西和流程. 总共需要三个软件,为了便于找到最新的版本,把官网也放后面: Apktool:http://ibotpeaches.github.io/Apktool/install/ 最新版本2.0.1 dex2jar: https://github.com

反编译Android APK及防止APK程序被反编译

原文出处 反编译Android APK及防止APK程序被反编译 怎么逆向工程对Android Apk 进行反编译 google Android开发是开源的,开发过程中有些时候会遇到一些功能,自己不知道该怎么做,然而别的软件里面已经有了,这个时候可以采用反编译的方式,解开其他的程序,来了解一些它 的做法,同时啊,还可以借鉴别人的软件结构,资源文件:作为一个开发者,你可能会很想知道这些效果界面是怎么去实现的,这时,你便可以对改应用的APK进行反编译查看.此方式主要目的是为了促进开发者学习,借鉴好的代

实例详解:反编译Android APK,修改字节码后再回编译成APK

本文详细介绍了如何反编译一个未被混淆过的Android APK,修改smali字节码后,再回编译成APK并更新签名,使之可正常安装.破译后的apk无论输入什么样的用户名和密码都可以成功进入到第二个Activity. 有时难免要反编译一个APK,修改其中的若干关键判断点,然后再回编译成一个全新的可用的apk,这完全是可实现的.若要完成上述工作,需要以下工具,杂家后面会把下载链接也附上.这些软件截止本文发布时,经过杂家确认都是最新的版本. 1.APK-Multi-Toolv1.0.11.zip 用它

反编译Android应用

转载请注明出处:http://blog.csdn.net/allen315410/article/details/44018747 Android反编译介绍 我们在开发Android应用的时候,常常会"参考""借鉴"一下别人"想法",你们懂的!然而,很多时候我们是看不见别人的源码的,这时候唯一解决的方法就是反编译apk,我们知道,当一个Android应用开发好了以后,会打包生成apk文件,然而Android打包工具会将java源码编译成.clas

利用开源项目jadx反编译Android应用

利用开源项目jadx反编译Android应用 利用Github开源项目jadx可以直接对 .dex, .apk, .jar, .class 类型的文件进行直接反编译 对比之前 apktool(解包apk) + dex2jar(将.dex转换成.jar) + jd-gui (查看.jar文件)反编译三件套, jadx的优点在于: 1. 可以一行命令直接反编译恢复出.java文件 命令: jadx -d out calc.apk 需要先把apk拷贝到bin目录下, 如图:  2. 可以一行命令直接以

Android - 使用JD-GUI反编译Android代码

使用JD-GUI反编译Android代码 本文地址: http://blog.csdn.net/caroline_wendy Android程序出现Bug时,需要根据Bug寻找问题出错的地方; 需要使用工具dex2jar.sh和JD-GUI,并把dex2jar.sh添加进系统路径; 把需要反编译的apk包修改为zip文件, 解压, 找到".dex"文件, "classes.dex"; 使用命令: sh dex2jar.sh ~/Desktop/ChunyuDocto

实例具体解释:反编译Android APK,改动字节码后再回编译成APK

本文具体介绍了怎样反编译一个未被混淆过的Android APK,改动smali字节码后,再回编译成APK并更新签名,使之可正常安装.破译后的apk不管输入什么样的username和password都能够成功进入到第二个Activity. 有时难免要反编译一个APK.改动当中的若干关键推断点,然后再回编译成一个全新的可用的apk,这全然是可实现的. 若要完毕上述工作,须要以下工具,杂家后面会把下载链接也附上.这些软件截止本文公布时,经过杂家确认都是最新的版本号. 1.APK-Multi-Toolv

浅析,反编译 Android APK流程分享!

作为公司的技术兼产品人员,看到别人开发的优秀Android APK实在羡慕,在Android开发的过程,也很想去学习别人那些漂亮的动画和布局,或是产品逻辑等是怎么做的,所以最近学习了对APK的反编译,只做学习借鉴,提升产品竞争力,不为任何不法企图之用.        首先下载反编译软件apktool .dex2jar. jd-gui对APK进行反编译 工具介绍: apktool :资源文件获取,可以提取出图片文件和布局文件进行使用查看,其原理详情:(http://my.oschina.net/1

Mac OS X 10.10.3反编译Android apk

1.下载开源工具apktool 下载地址 解压然后使用命令行: ./apktool d ~/testdeJava/Contacts.apk ~/testdeJava/Contacts  //这一步主要反编译资源文件,反编译结果指定为目录:~/testdeJava/Contacts [python] view plaincopy I: Baksmaling... I: Loading resource table... I: Loaded. I: Loading resource table fr