APK包的一些修改心得apk反编译

最近一直在弄apk,还买了一本书,感觉学习起来很吃力,还是想通过修改反编译一些apk来的快,来的省事。希望本文能对各位美化新手有所帮助。

一、单纯修改apk中未加密资源

  • 01

    什么资源没有加密?非res文件夹下的资源,以及res中的图片。 1、直接用WinRAR/7-Zip解压缩apk包。 需要了解:META-INF就是签名;res就是文件类资源(图片及xml),classes.dex就是代码部分,resources.arsc就是字符串之类的资源。 2、修改/assets/operate_type.xml 文件。 3、删除META-INF 签名文件夹。 4、打包apk。 5、进行签名: 目前网络上提供的工具签名方法都是这个: java -jar SignApk.jar platform.x509.pem platform.pk8 aa.apk aa_signed.apk 其中: ┌─ SignApk.jar 是签名工具 ├─ platform.pk8 是私钥 ├─ platform.x509.pem 是相对应的证书/公钥 └─ 使用SignApk.jar进行签名,其会自动删除META-INF 签名文件夹,并生成新签名。 6、签名后的apk即可进行安装使用。

    二、签名的方法

    • 01

      除上文的签名外,还有一种方法,目前签名是成功,验证成功,但是apk无法安装,报apk签名错误。 (1)生成keystore文件 keytool -genkey -keystore test.keystore -alias CERT -keyalg RSA -validity 2000 keytool 在Java/jdk/bin 目录下 (2)使用keystore进行签名 jarsigner -verbose -keystore test.keystore -signedjar aa_sig.apk aa.apk CERT jarsigner 在Java/jdk/bin 目录下 (3)验证签名 jarsigner -verify aa_sig.apk jarsigner 在Java/jdk/bin 目录下

      三、解包工具的使用,修改apk中加密资源

      • 01

        1、对apk进行解包:(包为aa.apk,解包后文件夹为aa) java -jar apktool.jar d aa.apk aa 2、修改aa文件夹中资源 3、对文件夹aa进行打包成New-aa.apk java -jar apktool.jar b aa New-aa.apk 4、签名apk java -jar SignApk.jar platform.x509.pem platform.pk8 New-aa.apk New-aa_signed.apk 5、安装apk测试

        四、其他相关工具

        • 01

          1、有一个Arsc修改器,可以在直接从apk解压出arsc资源而不解包情况下修改string等。(此方法完全可以被apktool方法替代,一是部分资源不能进行修改,工具封锁了吧…二是字符串可能直接写在代码中,在classes.dex中,这个工具也不管用。) 2、有一个dex2jar工具,直接将apk包中的dex变成jar,从而使用jd-gui进行查看java源码代码。(个人感觉效果不好。还不如直接用apktool弄出smali文件,直接修改方便。)

          五、修改xml的一些心得

          • 01

            凡是看着文章的大部分人都是要美化去广告什么的。这就要面临修改xml,修改了几次,有点小经验,算作结尾: 1、仅仅用作展示的图片、文字,一般可以在xml中进行注释掉。而一些不需要的按钮图片,注释掉可能出问题,比如调用,此时可以修改为不显示,或者直接把他的宽度高度修改为0 注释方法是<!– 注释的内容 –> 修改不显示的方法是加入android:visibility=”invisible” 修改宽度高度方法是android:layout_width=”0.0dip” 和 android:layout_height=”0.0dip” 2、所有的资源都可以任意修改。比如一个logo图片是120*60的,你可以修改为120*120,由长方形修改为正方形。我一般是把资源导入到eclipse中边看着边修改。同时,也可以加入新的资源图片等,然后对应着修改xml布局。有了res图片资源和xml布局权限,界面完全可控。除非程序代码中强写的或者还有初始化布局。 差点忘记附件了…apk相关工具.传了这么多年附件。 附上我修改的一点点效果:(模拟器和魅族M9真机)

          魅族M9
          (0)

          相关推荐

          • APK+Dex文件反编译及回编译工具(APKDB)安装经验

            APKDB是一款,针对Android OS系统的APK程序,直接反编译修改的工具.其实,本工具是一个工具集合箱,直接在[鼠标右键]创建快捷菜单:非常方便汉化工作者,对APK或Dex文件进行简易的反编译 ...

          • 安卓ROM定制:[8]系统APK的反编译和编译

            系统APK的反编译和编译 操作方法 01 首先反编译工具是必须的,下载反编译工具 02 解压工具 03 编译非系统apk前需要把APK命名为123.apk 04 反编译系统apk时需要将Rom的fra ...

          • 中端技术系列教程第二讲——反编译、编译和签名

            以下是为大家介绍的<中端技术系列教程第二讲--反编译.编译和签名>详细内容,希望对大家有所帮助! №.1  反编译 01 1.反编译:高级语言源程序经过"编译"变成可执 ...

          • 用MT文件管理器修改apk包名

            利用MT文件管理器把APK软件修改成喜欢的名字! 操作方法 01 打开MT文件管理器 02 找到需要修改的APK安装包 03 点击查看 04 点击resources.arsc 05 点击字符常量然后点 ...

          • Android apk反编译基础(apktoos)图文教程

            很久有写过一个广工图书馆主页一个类爬虫的demo(因为没接口,只能扒取静态网页),实现一些图书馆系统的一些功能。但最近发现图书馆系统在html页面上做了手脚,一页html页面中嵌入了几千行的注释,并有 ...

          • apk反编译之有效防止破解和反编译加密方法

            对于Android开发者来说,自己开发的Android APP被破解是个让人头疼的事.那有什么办法能防止Android apk反编译和破解呢?一般的混淆代码和防二次打包还有效么?我们通过下面的内容来验 ...

          • Android APK反编译详解(附图)

            一.反编译Apk得到Java源代码 首先要下载两个工具:dex2jar和JD-GUI 前者是将apk中的classes.dex转化成Jar文件,而JD-GUI是一个反编译工具,可以直接查看Jar包的源 ...

          • apk反编译工具使用方法 快速反编译安卓apk软件

            学习安卓开发经常需要分析别人的apk,通过了解别人怎么编写的代码从而快速提高自己的编程水平,所以就需要用到apk反编译软件将别人的apk文件反编译出来,这样就可以查看其代码了.反编译是一种程序逆向编译 ...

          • Android如何防止apk程序被反编译

            操作方法 01 作为Android应用开发者,不得不面对一个尴尬的局面,就是自己辛辛苦苦开发的应用可以被别人很轻易的就反编译出来.Google似乎也发现了这个问题,从SDK2.3开始我们可以看到在an ...