zoukankan      html  css  js  c++  java
  • Android逆向 APK文件组成

    一 了解APK文件

      我们知道Android系统能运行的程序是.apk文件格式,其实它就是一个压缩包而已,把.apk修改成.zip,然后解压就可以得到该apk内部的文件结构。

    PS: 既然可以把apk文件改成zip解压,能不能再把这些文件压缩成zip格式,再修改成apk文件安装到手机里呢?

      肯定是不行的,因为解压时文件已经被修改了,要想重新压缩成apk成功安装的话需要重新签名的。

    上节课编写一个Android程序生成的apk太多简单,所以文件组成过于简单。自己接触unity方面比较多,这儿用一个unity生成的apk解压后得到的文件来介绍,如图:

    1 assets文件夹:

      资源目录,在Java代码中需要使用AssetManager来访问该目录。

      PS:使用C++游戏引擎(Unity,UE等)开发的APK中的资源文件均需放在asset文件夹下。( Icon图标还是会放到res文件夹下)

    2 lib文件夹:

      so库存放目录,一般由NDK编译得到,常见于使用游戏引擎活JNI native调用的工程中

    3 META-INF文件夹:

      存放工程的属性文件,例如CERT.RSA

    4 res文件夹:

      资源目录,res目录下的资源文件在编译时会自动生成索引文件R.java,在Java代码中引用的话需要用R.xxx.xxx方式引用。

      比如我们上节在activity_main.xml中定义的Button的id为@+id/button_Confirm,在MainActivity.java中引用这个Button的话就得用R.id.button_Confirm方式引用。

      PS:使用Java开发的Android工程,除了音频和视频资源放在raw或asset文件夹下,其他资源都放在res文件夹下。

  • 相关阅读:
    caffe:mac10.12安装caffe的步骤
    查找两个链表的共同子链表
    golang:1.并发编程之互斥锁、读写锁详解
    git问题汇总
    有用的技术工具
    maven 安装本地jar包到本地maven仓库
    win7下Hadoop学习 之 Cygwin下载、安装、配置
    简单目录备份脚本
    2021年01月28日微博热搜汇总
    2021年01月26日微博热搜汇总
  • 原文地址:https://www.cnblogs.com/fengxing999/p/9968929.html
Copyright © 2011-2022 走看看