zoukankan      html  css  js  c++  java
  • 获取Android自己写好了的apk以及反编译

    今天,我们先说一下,获取Android自带的apk以及反编译它们来学习Android工程师是怎样写的,今天我们就以拿到Android自带的短信管理器的apk为例子

    你可能有疑问,为什么要那么麻烦,从系统来拿,还要反编译,如果我们有网络的时候,当然可以直接去Android的源码那里下载啦(Android源码下载方法),但如果我们没有网络呢,那么我们就可以通过这样来研究Android自带的apk啦

    首先,我们讲一下怎样获取那个apk,其实很简单的,作为一个Android的开发人员,肯定会用过模拟器的啦,我们获取apk就是通过模拟器来获取的

    我们先打开一个模拟器。然后去到ddms里面去,我们就可以看到



    有设置的apk啦,有打电话的apk啦,有照相的apk啦,所以大家如果没有网络的话,就可以在这里拿到系统的apk,然后反编译,就可以研究一下系统是怎样写的啦

    系统自带的apk都在里面啦,那么我们的短信的apk在那里呢

    短信的apk就是一个叫Mms的apk,大家可以找到它,然后把它导出来


    接下来,我们还需要三个工具,分别是

    apktool  它可以拿到apk里面的资源文件,我们要下载两个文件,分别是apktool1.5.2.tar还有apktool-install-windows-r05-ibot.tar

    dex2jar 它可以把apk里面的dex文件转换成jar文件,下载地址

    jd-gui 它可以把jar文件或class文件反编译成java文件,下载地址

    好啦,我们把三个工具下载好



    然后解压出来

    然后呢,我们把apktool1.5.2里面的那个jar文件复制到apktool-install-windows-r05-ibot这个目录下面


    然后呢把那个之前导出的短信的apk也拷贝到这个目录下面,然后在dos下面进入到这个目录,然后输入命令apktool d Mms.apk



    我们就可以看到,这个目录有一个叫Mms的目录了,这个就是Mms.apk这个apk里面的资源啦

    接下来,我们就要用winrar这些压缩软件来打开那个Mms.apk啦,其实apk的压缩方式和jar的压缩方式是一样的,和rar的压缩方式也是一样的


    我们要把classes.dex这个文件拷贝出来,然后放到dex2jar这个目录下面,然后在dos下进入到这个目录,然后运行命令,dex2jar classes.dex


    就这样,我们就拿到了一个jar文件啦,现在我们就 把那个jar文件拷贝出来,然后放到jd-gui这个目录下面

    然后就双击那个jd-gui.exe


    然后就File-->OpenFile

    然后就打开刚刚那个jar就可以啦



    就这样子,我们就可以看到源码啦,资源文件在apktool那里,把它也拿下来就可以的啦


    今天源码下载


  • 相关阅读:
    简介支持向量机热门(认识SVM三位置)
    马云控股“中国文化”什么暗藏玄机?
    cocos2d-x 颜色
    饼干怪兽和APT攻击
    FindBugs:Compiler output path for module can not be null. check your module/project settings问题原因
    java传值和通过引用传递
    威佐夫博奕
    数据复制特定的代码:监视剪贴板和剪贴板内容到治疗后的剪贴板
    Opencv on Ubuntu (from Ubuntu)
    Hdu 4916 Count on the path
  • 原文地址:https://www.cnblogs.com/suncoolcat/p/3347868.html
Copyright © 2011-2022 走看看