• apk反编译及安装位置的更改


     

    最近在玩手机的时候,发现老多程序都不能安装在sd卡上,这样使手机内存变的越来越小,于是就查了一下。需要将manifest.xml文件反编译,然后再打包签名。

    下面先说说反编译吧。

    首先介绍.dex的反编译,下面这几步只能反编译java文件

    工具下载:需用到dex2jar和JD-GUI这2个工具

    dex2jar下载地址http://laichao.googlecode.com/files/dex2jar-0.0.7-SNAPSHOT.zip
    JD-GUI下载地址:windows版JD-GUI:http://laichao.googlecode.com/files/jdgui.zip

    Linux版JD-GUI:http://laichao.googlecode.com/files/jd-gui-0.3.2.linux.i686.tar.gz

    步骤:

    1.首先找到Android软件安装包中的classes.dex
    把.apk文件改名为.zip,然后解压缩,得到其中的classes.dex文件,它就是java文件编译再通过dx工具打包成的,所以现在我们就用上述提到的2个工具来逆方向导出java源文件

    2.把classes.dex拷贝到dex2jar.bat所在目录。
    在命令行模式下定位到dex2jar.bat所在目录,运行 dex2jar.bat classes.dex ,生成classes.dex.dex2jar.jar

    3.运行JD-GUI工具(它是绿色无须安装的)
    打开上面的jar文件,即可看到源代码

    其次,介绍.xml的反编译。下面这几部是对.xml文件的反编译,如果要更改安装位置的话只需要操作下面这几步

    反编译apk生成程序的源代码和图片、XML配置、语言资源等文件。

    工具下载:

    http://code.google.com/p/android-apktool/下 载获得,apktool-1.0.0.tar.bz2和apktool-install-windows-2.1_r01-1.zip两个包都要下。

    步骤:

    1.解压缩下载的两个文件包,

    apktool-install-windows-2.1_r01-1.zip解压缩后得到的包里有aapt.exe 和apktool.bat.

    (注意要把apktool-1.0.0.tar.bz2解压后的一个.jar 文件copy进来)

    2.打开命令窗口 (开始 > 运行,输入cmd,回车。)进入到apktool.bat的文件夹里。

    输入:

    apktool d C:\***.apk C:\***文件夹   解包命令

    apktool b C:\***文件夹 C:\***.apk   打包命

    (命令行解释:apktool d 要反编译的文件 输出文件夹,这个输出文件夹不需要在c盘存在)

    特别注意:你要反编译的文件一定要放在C盘的根目录里,

    3.打开 C:\***文件夹 就可以得到我们学院的各种资源了。

    对于要更改安装位置,使其可以安装在sd卡上遵循以下步骤:

    在 <manifest> 元素中包含android:installLocation 属性,设置其值为”preferExternal” 或 “auto”。例如:

    <?xml version="1.0" encoding="utf-8"?>
    <manifest android:installLocation="auto" ...> 
    

    note: preferExternal属性默认优先安装在sd卡上,如果没有sd卡的话就安装到内存中。auto不一定会安装在哪,但是可以在应用程序管理器来手动更改安装在哪。那个preferExternal貌似也可以。

    最后就是要将文件打包,并且要数字签名,如果不签名就会安装不了.下面是一个打包和数字签名的程序下载地址

    http://download.csdn.net/detail/zqiang_55/3779841

    这个工具里带的那个反编译工具没有apktool命令好用。使用的话运行apktool.exe程序按照上面的菜单来就行了

    PS:下面说说我反编译和打包的几个程序

    QQ:version:v69,这个程序不知道怎么的,反编译打包签名之后安装就是不能运行。

    人人客户端:version:4.2.1 我的手机里自带了一个人人客户端,我在做完这些之后安装说数字签名不正确,然后我就把它给卸了然后重新装了,这样就可以安装运行了。

    快拍二维码:版本忘了。这个程序按照上面的步骤一点错误也没有。ok!!

  • 相关阅读:
    解决关于ArcGIS10.2服务手动启动的问题
    简单利用XSS获取Cookie信息实例演示
    Sublime text 3 如何格式化HTML/css/js代码
    和你一起做一百件事
    两个人在一起,无论做什么都觉得很浪漫。 盘点了情侣之间一定要做的100件事,做完这100件事就结婚吧!
    摩根士丹利
    2016中国app年度排行榜:十大行业、25个领域、Top 500 和2017趋势预测
    国外最受欢迎的十大社交APP网站
    中国境内PEVC投资公司名单
    2015中国10大最佳创业投资人(含50强完整名单)
  • 原文地址:https://www.cnblogs.com/wuyida/p/6300673.html
Copyright © 2020-2023  润新知