精华内容
参与话题
问答
  • apk反编译

    千次阅读 2018-06-17 21:42:25
    一:apk是啥? 按照我们通俗一点的理解,apk就是我们Android手机上门的安装包。但是站在我们开发者的角度来看,这样理解肯定是比较片面的。其实在我的理解来看,apk文件更像是一个zip包。在windows上面可以直接将...

    一:apk是啥?

        在我的理解来看,apk文件更像是一个zip包。在windows上面可以直接将后缀名.apk改为.zip。然后解压出来,目录结构大概是这样子的:


    不过可能不同的apk,里面的目录不尽相同。当然了,不用我说大家应该也都知道,这文件直接打开肯定是看不懂,所以我这里就不把打开后的文件截图贴出来了。

    二:这解压出来的这些又是什么鬼?  

    • AndroidManifest.xml:应用的全局配置文件

    • assets:原始资源文件夹,对应着Android工程的assets文件夹,一般用于存放原始的网页、音频等等,与res文件夹的区别这里不再赘述,可以参考上面介绍的两篇文章。

    • classes.dex:源代码编译成class后,转成jar,再压缩成dex文件,dex是可以直接在Android虚拟机上运行的文件。

    • lib:引用的第三方sdk的so文件。

    • META-INF:Apk签名文件。

    • res:资源文件,包括了布局、图片等等。

    • resources.arsc:记录资源文件和资源id的映射关系。

    当然了,这个肯定不是我自己瞎蒙的。是从别人那里“借鉴”来的。如果想进一步理解apk到底是个啥,可能需要去了解一下apk的具体构建过程。因为自己对这一块理解也不深刻,这里找到一篇文章,大家有兴趣可以看一看:Android构建过程分析

    三:反编译三件套

        现在发编译的工具有很多,比如android-classysharkAndroidGuardAndroid-Crack-Tool(Mac专属)。但是我权衡了一下,最终还是决定采用比较常规的三件套的方式。因为毕竟是一个学习的过程,首选肯定是流行并且常用的工具。

        工具介绍:           

        1.apktool  

            作用:资源文件获取,可以提取出图片文件和布局文件进行使用查看

        2.dex2jar

            作用:将apk反编译成java源码(classes.dex转化成jar文件)

        3.jd-gui

            作用:查看apk中classes.dex转化成出的jar文件,即源码文件

    四:反编译流程

        1.apk反编译得到程序的源代码、图片、XML配置、语言资源等文件

    使用apktool,至于下载链接,CSDN上面就有,然后将需要反编译的apk和apktool放到同一个文件夹里面,就像这样:


    然后再当前文件夹命令行执行:


    你的apk名字是啥,这里就应该写啥。然后就会出现一个以你apk名字命名的文件夹。里面打开我这里是这样子的:


    有些对这个有了解过的朋友,对smali肯定比较眼熟,上图里面的smali文件夹直接打开,里面的文件结构和目录跟原始的java文件目录是一致的。不过里面的文件并不是我们熟悉的java代码,这里我对smali做一些简单的解释。

    Android虚拟机Dalvik并不是执行java虚拟机JVM编译后生成的class文件,而是执行再重新整合打包后生成的dex文件,dex文件反编译之后就是smali代码,可以说,smali语言是Dalvik的反汇编语言,他也是有自己的语言格式和一整套语言体系,但是我并没有较多的了解,所以这里不打算展开来讲。

    (tip:Smali是冰岛语中编译器的叫法,也许你会问为什么是冰岛语,因为Dalvik是一个冰岛渔村名字。看了阿根廷对冰岛之后对冰岛也是比较感兴趣,所以这里插一句......

    然后现在得清单文件打开显示是这样子的(很清晰明了的格式):


    有一部分我打码了,但是其实这些打码的地方也都是可以看到的。

    现在的res里面的布局显示是这样的,也是可以直接看到的(这里我是直接用notepad打开的,没有格式化):


        2.apk反编译得到Java源代码

            (tip:这一步步骤比较繁琐,如果不是自己想要去反编译的话,可以跳过这里,直接结果)

    将下载好的dex2jarjd-gui解压。将要反编译的apk,后缀改成.zip。然后解压打开,上面展示过这个目录,里面会有一个classes.dex。然后将这个classes.dex文件放到刚刚解压出来的dex2jar-2文件夹里面,就是这个文件夹(dex2jar-2.0.zip解压出来之后的文件夹):


    里面会有一大堆的命令文件,然后把classes.dex文件放到这个文件夹里面。就像这样:


    然后在当前文件夹打开命令行,执行:


    然后会生成一个classes-dex2jar.jar的文件夹:


    然后你以为在这里就结束了吗。哈哈,其实并没有,刚刚我们介绍的三件套只用了两个,最后还有一个jd-gui没用到

        3.使用jd-gui打开classes-dex2jar.jar查看源码

    解压jd-gui文件之后里面会有一个jd-gui.exe。直接然后用这个东西打开上一步拿到的classes-dex2jar.jar。


    这里也是比较清晰的能看到,但是有些地方并不是那么合情合理,可能是因为一些混淆的原因。至于混淆和反混淆的,这一部分内容也比较繁多,所以打算到下一篇博客再去详述。

    五:总结

        最后总结一下,apktool主要是负责获取manifest清单文件,以及res里面的xml配置文件。dex2jar根据名字就可以看出来,就是将dex文件转成jar文件。jd-gui从名字其实也可以猜到,GUI--->Graphical User Interface,图形用户接口,用来打开上一步得到的jar文件(图形化界面)。

        但是其实还是有很多小问题的,比如怎么样才能够完美的得到源码,而不是掺杂一些混淆之后的东西。比如jd-gui获取到的class文件能否一键导出或者能不能直接转成java文件运行起来?比如目前这个apk其实很明显主要的功能代码并不在我通过上述步骤得到的可视化的界面里面显示(也许是使用jar和aar的原因?如何解决?总不能一个个去拆解吧)等等,这个也算是给自己留几个坑吧。边学习边思考。

        本来之前是打算写一些技术类的文章,但是鉴于我司大佬实在太牛*了,不敢班门弄斧。所以就做了这个反编译公司软件的总结和分享吧。算是自己第一次做反编译apk,做起来还是碰到了很多问题,但是也都解决的七七八八,最后也算是勉强完成了。如果上述的问题各位大佬有答案,不吝赐教。谢谢阅读。







            


    展开全文
  • APK文件结构和安装过程

    万次阅读 多人点赞 2014-12-31 19:00:53
    APK文件结构 Android应用是用Java编写的,利用Android SDK编译代码,并且把所有的数据和资源文件打包成一个APK (Android Package)文件,这是一个后缀名为.apk的压缩文件,APK文件中包含了一个Android应用程序的...

    APK文件结构

    Android应用是用Java编写的,利用Android SDK编译代码,并且把所有的数据和资源文件打包成一个APK (Android Package)文件,这是一个后缀名为.apk的压缩文件,APK文件中包含了一个Android应用程序的所有内容,是Android平台用于安装应用程序的文件。APK就是一个zip压缩包,解开这个APK包我们可以看到以下的结构:


    Figure 1 APK文件结构

    1)       assets目录:用于存放需要打包到APK中的静态文件,和res的不同点在于,assets目录支持任意深度的子目录,用户可以根据自己的需求任意部署文件夹架构,而且res目录下的文件会在.R文件中生成对应的资源ID,assets不会自动生成对应的ID,访问的时候需要AssetManager类。

    2)       lib目录:这里存放应用程序依赖的native库文件,一般是用C/C++编写,这里的lib库可能包含4中不同类型,根据CPU型号的不同,大体可以分为ARM,ARM-v7a,MIPS,X86,分别对应着ARM架构,ARM-V7架构,MIPS架构和X86架构,这些so库在APK包中的构成如下图Figure2:


    Figure 2 lib目录结构

    其中,不同的CPU架构对应着不同的目录,每个目录中可以放很多对应版本的so库,且这个目录的结构固定,用户只能按照这个目录存放自己的so库。目前市场上使用的移动终端大多是基于ARM或者ARM-V7a架构的,X86和MIPS架构的移动智能终端比较少,所以有些应用程序lib目录下只包含armeabi目录或者armeabi-v7a目录,也就是说,这四个目录要根据CPU的架构来选,而市面上ARM架构的手机占大多数,所以一般的APK只包含ARM和ARM-V7a的so。

    3)       res目录:res是resource的缩写,这个目录存放资源文件,存在这个文件夹下的所有文件都会映射到Android工程的.R文件中,生成对应的ID,访问的时候直接使用资源ID即R.id.filename,res文件夹下可以包含多个文件夹,其中anim存放动画文件;drawable目录存放图像资源;layout目录存放布局文件;values目录存放一些特征值,colors.xml存放color颜色值,dimens.xml定义尺寸值,string.xml定义字符串的值,styles.xml定义样式对象;xml文件夹存放任意xml文件,在运行时可以通过Resources.getXML()读取;raw是可以直接复制到设备中的任意文件,他们无需编译。

    4)       META-INF目录:保存应用的签名信息,签名信息可以验证APK文件的完整性。AndroidSDK在打包APK时会计算APK包中所有文件的完整性,并且把这些完整性保存到META-INF文件夹下,应用程序在安装的时候首先会根据META-INF文件夹校验APK的完整性,这样就可以保证APK中的每一个文件都不能被篡改。以此来确保APK应用程序不被恶意修改或者病毒感染,有利于确保Android应用的完整性和系统的安全性。META-INF目录下包含的文件有CERT.RSA,CERT.DSA,CERT.SF和MANIFEST.MF,其中CERT.RSA是开发者利用私钥对APK进行签名的签名文件,CERT.SF,MANIFEST.MF记录了文件中文件的SHA-1哈希值。

    5)       AndroidManifest.xml:是Android应用程序的配置文件,是一个用来描述Android应用“整体资讯”的设定文件,简单来说,相当于Android应用向Android系统“自我介绍”的配置文件,Android系统可以根据这个“自我介绍”完整地了解APK应用程序的资讯,每个Android应用程序都必须包含一个AndroidManifest.xml文件,且它的名字是固定的,不能修改。我们在开发Android应用程序的时候,一般都把代码中的每一个Activity,Service,Provider和Receiver在AndroidManifest.xml中注册,只有这样系统才能启动对应的组件,另外这个文件还包含一些权限声明以及使用的SDK版本信息等等。程序打包时,会把AndroidManifest.xml进行简单的编译,便于Android系统识别,编译之后的格式是AXML格式,如下图Figure3所示:


    Figure 3 AXML格式

           axml头:其中的axml头是固定标识axml文件的,其值固定时0x00080003。

    axml文件长度:标识axml文件的大小。

    StringDataSegment:xml文件中所有字符串类型保存在此。

    ResourceIdSegment:xml文件中声明的资源文件ID保存于此。

    XmlContentSegment:是xml的内容段,按照xml文件中的结构依次排开,保存xml的数据内容。

    6)       classes.dex:

    传统的Java程序,首先先把Java文件编译成class文件,字节码都保存在了class文件中,Java虚拟机可以通过解释执行这些class文件。而Dalvik虚拟机是在Java虚拟机进行了优化,执行的是Dalvik字节码,而这些Dalvik字节码是由Java字节码转换而来,一般情况下,Android应用在打包时通过AndroidSDK中的dx工具将Java字节码转换为Dalvik字节码。dx工具可以对多个class文件进行合并,重组,优化,可以达到减小体积,缩短运行时间的目的。dx工具的转换过程如图所示:


    Figure 4 dx工具把.class文件转换成dex文件

           如图Figure 4,dx工具把每个.class文件的每个区域的内容进行去重,重组,优化重排后生成dex文件,生成的dex文件可以在Dalvik虚拟机执行,且速度比较快。

    7)       resources.arsc:用来记录资源文件和资源ID之间的映射关系,用来根据资源ID寻找资源。Android的开发是分模块的,res目录专门用来存放资源文件,当在代码中需要调用资源文件时,只需要调用findviewbyId()就可以得到资源文件,每当在res文件夹下放一个文件,aapt就会自动生成对应的ID保存在.R文件,我们调用这个ID就可以,但是只有这个ID还不够,.R文件只是保证编译程序不报错,实际上在程序运行时,系统要根据ID去寻找对应的资源路径,而resources.arsc文件就是用来记录这些ID和资源文件位置对应关系的文件。

    APK安装过程

    Adroid的应用安装涉及到如下几个目录:

    /data/app:存放用户安装的APK的目录,安装时,把APK拷贝于此。

    /data/data:应用安装完成后,在/data/data目录下自动生成和APK包名(packagename)一样的文件夹,用于存放应用程序的数据。

    /data/dalvik-cache:存放APK的odex文件,便于应用启动时直接执行。

    具体安装过程如下:

    首先,复制APK安装包到/data/app下,然后校验APK的签名是否正确,检查APK的结构是否正常,进而解压并且校验APK中的dex文件,确定dex文件没有被损坏后,再把dex优化成odex,使得应用程序启动时间加快,同时在/data/data目录下建立于APK包名相同的文件夹,如果APK中有lib库,系统会判断这些so库的名字,查看是否以lib开头,是否以.so结尾,再根据CPU的架构解压对应的so库到/data/data/packagename/lib下。

    APK安装的时候会把DEX文件解压并且优化位odex,odex的格式如Figure 5图所示:


    Figure 5 odex文件格式

    odex在原来的dex文件头添加了一些数据,在文件尾部添加了程序运行时需要的依赖库和辅助数据,使得程序运行速度更快。


    展开全文
  • APK反编译

    万次阅读 多人点赞 2017-12-27 17:31:39
    学习和开发Android应用有一段时间了,今天写一篇博客总结一下Android的apk文件反编译。我们知道,Android应用开发完成之后,我们最终都会将应用打包成一个apk文件,然后让用户通过手机或者平板电脑下载下来进行安装...
    学习和开发Android应用有一段时间了,今天写一篇博客总结一下Android的apk文件反编译。我们知道,Android应用开发完成之后,我们最终都会将应用打包成一个apk文件,然后让用户通过手机或者平板电脑下载下来进行安装。正常情况下,Android应用打包成apk之后,就无法再看到开发这个应用时使用的资源文件以及代码了。但是我们通过网上提供了一些工具,还是可以将apk进行反编译的,apk反编译之后,我们就可以看到开发这个应用使用的资源文件(图片)、layout、样式、相关的实现代码等,apk反编译也算是Android开发中一个比较实用的技巧吧,当我们对别人开发好的应用感兴趣时,我们就可以通过这种技术手段将别人打包好的apk进行反编译,继而可以看到我们感兴趣的内容,(注:反编译不是让各位开发者去对一个应用破解搞重装什么的,主要目的是为了促进开发者学习,借鉴好的代码,提升自我开发水平。)下面就来说说如何将一个apk反编译出来。

    一、准备必要工具

      工欲善其事,必先利其器,首先我们要下载好反编译apk时需要的相关工具

    1.1、使用工具

    1. apktool (资源文件获取) 
    2. dex2jar(源码文件获取)
    3. jd-gui  (源码查看)

    1.2、工具介绍

      apktool  

             作用:资源文件获取,可以提取出图片文件和布局文件进行使用查看

      dex2jar

             作用:将apk反编译成java源码(classes.dex转化成jar文件)

      jd-gui

             作用:查看APK中classes.dex转化成出的jar文件,即源码文件

    1.3工具下载

      apktool下载地址:https://bitbucket.org/iBotPeaches/apktool/downloads

      

      下载好之后得到一个如下图所示的jar文件

      

      dex2jar下载地址:http://sourceforge.net/projects/dex2jar/files/

      

      

      下载完成之后,得到一个如下图所示的压缩包

      

      jd-gui下载地址:http://jd.benow.ca/

      

      下载完成之后,得到一个如下图所示的压缩包:

      

      到此,需要使用到的3个相关工具都下载好了,在这里说明一下jd-gui的下载,我从官方网站上点击下载时会经常出现如下图所示的问题

      

      但是多试几次又可以下载了,所以如果有遇到这个问题的朋友们不妨多试几次,或者从别的地方下载jd-gui,jd-gui算是做Java开发的一个必备工具了,用它来将class反编译成java源代码是非常方便的,网上搜索一下一般都可以下载到,只不过版本不一定是最新的。

    二、Apk反编译流程

      为了方便进行反编译,我们将上述下载好的3个工具统一放到一个文件夹中,例如:

      

      然后将【dex2jar-2.0.zip】和【jd-gui-windows-1.3.0.zip】分别解压到当前文件夹,如下图所示:

      

    2.1、使用apktool反编译apk得到图片、XML配置、语言资源等文件

      进入CMD命令行,如下:

      

      切换到上述的3个工具的所在目录,如:E:\AndroidDevelopTool\Android反编译工具包

      

      接下来我们要做的就是运行apktool_2.0.1.jar这个jar文件来将apk文件进行反编译,在java中,运行可执行jar包的命令是:

    java -jar jar包名.jar

      使用如下的命令运行apktool_2.0.1.jar反编译MMTS-release-1.0.2.apk

    java -jar apktool_2.0.1.jar d -f E:\AndroidDevelopTool\Android反编译工具包\测试apk\MMTS-release-1.0.2.apk -o MMTS

      这个命令是启动apktool_2.0.1.jar将位于【E:\AndroidDevelopTool\Android反编译工具包\测试apk\】目录下的"MMTS-release-1.0.2.apk"这个apk反编译,然后将反编译生成的文件存放到当前目录(apktool_2.0.1.jar所在的目录,也就是"E:\AndroidDevelopTool\Android反编译工具包"目录)下的一个【MMTS】文件夹中。这个文件夹的名字是可以随便取的,喜欢叫啥都行。

      执行反编译操作:

      

      反编译成功后,会在当前目录(E:\AndroidDevelopTool\Android反编译工具包)下生成一个MMTS文件夹,打开MMTS里面就有反编译后生成的文件,如下图所示:

      

      打开MMTS文件夹,就可以看到反编译后的生成的文件,如下图所示:

      

      生成的文件和文件夹当中,我们关心的是【res】文件夹中和AndroidManifest.xml文件,打开res文件夹,里面就有我们想要看到的东西了,如下图所示:

      

      

      

      

      想查看哪个xml文件就使用文本编辑器打开看看吧,反正全部都可以看到了。以上就是使用apktool这个工具将一个apk反编译得到图片、XML配置、语言资源等文件的过程。

    2.2、使用dex2jar反编译apk得到Java源代码

      将要反编译的APK后缀名改为.rar或者 .zip,并解压,得到其中的classes.dex文件(它就是java文件编译再通过dx工具打包而成的),如下图所示:

      

      将获取到的classes.dex放到之前解压出来的工具【dex2jar-2.0】文件夹内,如下图所示:

      

      在命令行下定位到dex2jar.bat所在目录,输入"d2j-dex2jar classes.dex",效果如下:

      

      命令执行完成之后,在当前目录下就可以看到生成的Jar文件了,如下图所示:

      

      反编译classes.dex得到classes-dex2jar.jar文件之后,就可以使用【jd-gui】工具将class文件反编译成java源代码了

      

      使用jd-gui打开classes-dex2jar.jar就可以看到源代码了,如下图所示:

      

      JD-GUI虽然可以将class反编译成java源代码,但是对于一些被混淆过的class,反编译的效果就不是那么理想了,被混淆过的class反编译后的效果图(类文件名称以及里面的方法名称都会以a,b,c....之类的样式命名):

      

      以上步骤是我亲自实践过之后一步步整理出来的,对照着做应该不会有太大问题。

    三、Apk反编译注意问题

    3.1、apktool版本太旧导致反编译失败的问题

      之前用过了apktool这个工具的一些旧版本,发现总是反编译不成功,在执行反编译时会出现如下错误:

      Exception in thread "main" brut.androlib.AndrolibException: Could not decode arsc file

      

      这个问题是因为apktool版本过低导致,而解决这个问题的办法就是使用最新版本的apktool就可以了,最新版本的下载地址:https://bitbucket.org/iBotPeaches/apktool/downloads

    3.2、apktool执行反编译命令出现”Input file was not found or was not readable"的问题

      这个问题是因为apktool升级到2.0以上时,使用方式已经替换,格式为:apktool d [-s] -f <apkPath> -o <folderPath>

      好了,关于反编译apk的内容就这么多了。
      最后,给大家分享我下载好的那三个相关工具,下载地址:http://pan.baidu.com/s/1jGKSQyU

    展开全文
  • Android APK反编译就这么简单 详解(附图)

    万次阅读 多人点赞 2014-03-11 22:06:09
    你往往会去借鉴别人的应用是怎么开发的,那些漂亮的动画和精致的布局可能会让你爱不释手,作为一个开发者,你可能会很想知道这些效果界面是怎么去实现的,这时,你便可以对改应用的APK进行反编译查看。下面是我参考...

    在学习Android开发的过程你,你往往会去借鉴别人的应用是怎么开发的,那些漂亮的动画和精致的布局可能会让你爱不释手,作为一个开发者,你可能会很想知道这些效果界面是怎么去实现的,这时,你便可以对改应用的APK进行反编译查看。下面是我参考了一些文章后简单的教程详解。

    (注:反编译不是让各位开发者去对一个应用破解搞重装什么的,主要目的是为了促进开发者学习,借鉴好的代码,提升自我开发水平。)


    测试环境:

            win 7 


    使用工具:

         CSDN上下载地址:

           apktool (资源文件获取  下载  

           dex2jar(源码文件获取) 下载

           jd-gui  (源码查看) 下载

     

           Android反编译整合工具包(最新) 下载

     

         官方最新版本下载地址:

           apktool(google code)

      dex2jar(google code)  

       jd-gui(google code)最新版请见官方


    工具介绍:

    apktool  

         作用:资源文件获取,可以提取出图片文件和布局文件进行使用查看

    dex2jar

         作用:将apk反编译成java源码(classes.dex转化成jar文件)

    jd-gui

         作用:查看APK中classes.dex转化成出的jar文件,即源码文件


    反编译流程:

    一、apk反编译得到程序的源代码、图片、XML配置、语言资源等文件

    下载上述工具中的apktool,解压得到3个文件:aapt.exeapktool.batapktool.jar ,将需要反编译的APK文件放到该目录下,

    打开命令行界面(运行-CMD) ,定位到apktool文件夹,输入以下命令:apktool.bat d -f  test.apk  test    


    (命令中test.apk指的是要反编译的APK文件全名,test为反编译后资源文件存放的目录名称,即为:apktool.bat   d  -f    [apk文件 ]   [输出文件夹]

    说明获取成功,之后发现在文件夹下多了个test文件,点击便可以查看该应用的所有资源文件了。

    如果你想将反编译完的文件重新打包成apk,那你可以:输入apktool.bat   b    test(你编译出来文件夹)便可,效果如下:


    之后在之前的test文件下便可以发现多了2个文件夹:

    build

    dist(里面存放着打包出来的APK文件)


    二、Apk反编译得到Java源代码

    下载上述工具中的dex2jarjd-gui ,解压

    将要反编译的APK后缀名改为.rar或则 .zip,并解压,得到其中的额classes.dex文件(它就是java文件编译再通过dx工具打包而成的),将获取到的classes.dex放到之前解压出来的工具dex2jar-0.0.9.15 文件夹内,

    在命令行下定位到dex2jar.bat所在目录,输入dex2jar.bat   classes.dex效果如下:

    在改目录下会生成一个classes_dex2jar.jar的文件,然后打开工具jd-gui文件夹里的jd-gui.exe,之后用该工具打开之前生成的classes_dex2jar.jar文件,便可以看到源码了,效果如下:

    被混淆过的效果图(类文件名称以及里面的方法名称都会以a,b,c....之类的样式命名):



    三、 图形化反编译apk(本人未使用过)

    上述步骤一、二讲述了命令行反编译apk,现在提供一种图形化反编译工具:Androidfby

    首先,下载上述反编译工具包,打开Androidfby目录,双击Android反编译工具.exe,就可以浏览打开要反编译的apk


    通过反编译,你可以获知该应用用到了什么第3方的库文件,它的代码是如何编写的等等。

    然而,如果该APK进行了混淆处理,那么你看到的类文件名称以及里面的方法名称都会以a,b,c....之类的样式命名,所以你可以想找到你所想得知的界面代码可能会十分费劲,找到了代码可能看起来也会很费劲,可是一个大体的思路会获得,有了这个思路,你就可以自己去尝试了。

    本人曾经想写一个类似唱吧的名人界面布局,可是当初第一次接触不知道如何去写,进进行了反编译,即使他的那个代码是混淆过的,我也看出来他是通过LISTVIEW的TYPE设定不同的ITEM布局实现了。可能好多引用都是采用重写VIEW来实现效果,你可以得到他的大体思路对你的开发有益无害。


    还有处于一个开发者辛辛苦苦将自己的应用开发出来被别人一反编译便成为了他自己的东西,所以要进行混淆处理:

    以下是我转载的混淆的教程:http://blog.csdn.net/vipzjyno1/article/details/21042823


    展开全文
  • 安装apk的几种方法

    万次阅读 2017-12-07 18:03:21
    本人主要做android开发,调试时经常用到apk的安装,现总结一下Android安装apk包的五种方式(需要具备一些专业的知识才能使用): 1. 使用手机助手,例如:豌豆荚,金山手机助手等工具;连接后直接可以在线安装。 ...
  • 自己动手生成Android Apk

    万次阅读 多人点赞 2017-03-07 10:26:13
    本文仅做学习使用,比较简单,没有实际项目复杂。...所以我们在使用IDE自动编译打包Apk时,也应该知道Apk是怎么一步步由我们项目中的java文件,资源文件等变成我们所熟知的Apk的。不管使用什么IDE,Android
  • 一个简单的apk破解

    万次阅读 2017-05-27 10:16:05
    我们来看看要破解的apk打开后是个什么样的界面并且有什么功能,这个是我自己编写的一个简易程序,下面我会放出源码。 在这里我们可以看见这个app是一个输入密码然后输入正确下面就会出现登录成功的提示,否则...
  • apk 下载

    2017-04-17 13:46:19
    关于apk下载的一些问题 获取本地的版本号和服务器的版本号进行版本控制PackageManager manager = this.getPackageManager(); PackageInfo info = manager.getPackageInfo(this.getPackageName(), 0); final int ...
  • Apk完全退出Apk

    2013-06-17 08:57:59
    做android 应用开发时,经常无法完全退出APK。这里将提供一种方法,展示如何完全退出android应用!
  • http://www.appchina.com/ 转载于:https://www.cnblogs.com/onelikeone/p/9928028.html
  • 特制生日礼物——拼图游戏APK

    热门讨论 2012-09-13 22:20:28
    直接下载安装,同时我也上传了源代码分享,详情见个人博客 http://blog.csdn.net/jjzhoujun2010
  • Android初学者,用studio 写个简单的 一键 拨号 项目
  • 最近想做个萌化的Q版, 毕竟以前的是2016年 QQ6.3.6(霞之丘诗羽), 可是现在最新版是QQ6.6.9了!更新了不少功能,我打算自己萌化...、百度下载个QQandroid版 放在C盘 二、下载apktool.jar 包
  • 次简单的分析手机APK病毒木马

    千次阅读 2017-09-13 15:46:58
    次简单的分析手机APK病毒木马 写个笔记记录一下,起因是朋友在QQ上发了个连接叫我看看 安不安全,叫我帮他看看,反正在店里待着也没生意,那就顺便看看咯。   打开这个网址 会自动弹出下载个名为OOXX的...
  • 完整APK源码分析步骤(

    千次阅读 2016-03-16 17:40:50
    使用情景:当拿到一份不了解的源码时,如何快速对源码进行分析,了解其结构功能。 开发环境: Android studio
  • 有时候,我们需要用同一份生成几个不同的APK包在手机上测试,如果不修改配置,安装新APK时,会覆盖之前的APK。解决方法: 1.修改AndroidManifest中的包名: package="com.mini.app.abcd",将包名更改,重新clean...
  • 完整版java读取apk、ipa包名、版本名、版本号等信息

    万次阅读 热门讨论 2016-05-06 11:14:28
    有时候,我们上传apk或者是ipa文件的时候,是需要读取到里面的一些信息的,比如软件的包名,以及其版本信息等。在网上搜索了一下资料 , 找了很多版本,对于apk文件的版本号,一直读取不到,在这里,笔者自己总结了...
  • 获取安卓程序(apk)的源代码

    千次阅读 2013-11-22 14:12:52
    这段时间在学Android应用开发,在想既然是用Java开发的应该很好反编译从而得到源代码吧,google了一下,确实很简单,以下是我...、反编译Apk得到Java源代码 首先要下载两个工具:dex2jar和JD-GUI 前者是将apk中的cla
  • 面试:你懂什么是分布式系统吗?Redis分布式锁都不会?>>> 众所周知,国内电脑无法下载Google Play 上的应用.下面提供一些网址可以直接输入包名直接下载 测试可用 https://apkdl.in/ ...
  • Android APK反编译详解(附图)

    万次阅读 多人点赞 2011-08-28 22:42:11
    在此郑重声明,贴出来的目的不是为了去破解人家的软件,完全是种学习的态度,不过好像通过这种方式也可以去汉化一些外国软件。本文Android反编译教程,测试环境:Win7 Ultimate x64Ubuntu 12.04 x86_x64反编译工具...

空空如也

1 2 3 4 5 ... 20
收藏数 564,422
精华内容 225,768
关键字:

apk