在Android的开发测试过程中,为了替换assets文件或者更改smail文件,需要把apk拆开。这个过程用到apktool和jarsigner。其中apktool需要自己安装;jarsigner是jdk自带的,也就是说需要java开发环境。

apktool安装地址:https://ibotpeaches.github.io/Apktool/

如果你使用mac系统,可以使用homebrew安装。

brew install apktool

其他系统参照官方方法:https://ibotpeaches.github.io/Apktool/install/

使用方法:

拆包:
apktool d [apk路径]封包:
apktool b [拆包产生的文件夹]

拆包使用apktool d指令,执行完成之后生成同名目录,封包使用apktool b指令,此时生成apk文件,但是这个apk是未签名的。不能对手机上已经安装的apk进行替换,下面进行签名。jarsigner是jdk自带,不需要额外安装。

jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore [keystore路径] -storepass [密码] -signedjar [输出apk路径] [输入apk路径] [别名]

不同的apk签名可能不相同,使用 jarsigner —help 查看使用规则,现在的jdk都是兼容中文的,不用担心看不懂。

Apk 拆包替换文件相关推荐

  1. android程序包括哪几种文件,apk是什么文件

    很多人在手机上安装软件时会发现有一个叫apk的文件,这就让人产生疑惑了,apk是什么文件,apk文件怎么打开呢?下面就个大家介绍一下吧. apk是什么文件 APK是Android Package的缩写 ...

  2. linux同名文件没有自动替换,linux – bash脚本替换文件中出现的所有占位符

    我正在尝试编写一个bash脚本,用一个同名环境变量替换文件中所有出现的占位符.举个例子,如果我有一个像下面这样的文件-- This is an {{VAR1}} {{VAR2}}. It should ...

  3. 请教大家,如何使用sed命令,替换文件指定行的内容呢?-Linux系统管理-ChinaUnix.net...

    请教大家,如何使用sed命令,替换文件指定行的内容呢?-Linux系统管理-ChinaUnix.net

  4. 用python替换文件中内容的两种方法

    目标:替换文件中的字符串内容 方法1:使用fileinput包 import fileinput for line in fileinput.input("要修改的文件名", in ...

  5. linux下批量替换文件内容的三种办法

    http://www.51testing.com/html/93/316693-815340.html 程序开发中,可能你会经常遇到批量替换文件内容的情况,如果你使用的是linux,那么恭喜你,你可以 ...

  6. 用nodejs 替换文件中所有图片的url

    用nodejs 替换文件中所有图片的url 因业务需求,大量文件需要替换url到不同的环境. 所以用nodejs写了这个.本来想用python写,但是大部分同事只有nodejs环境. 主要的命令nod ...

  7. linux替换某个文件夹下所有文件,Linux 批量查找并替换文件夹下所有文件的内容...

    1.批量查找某个目下文件的包含的内容 cd etc grep -rn "查找的内容" ./ 2.批量替换某个目下所有包含的文件的内容 cd etc sed -i "s/查 ...

  8. sed 替换_sed命令批量替换文件内容

    " 开发人员有时会大批量替换文件内容,sed命令是一个很好用的工具." 01 - 暴力替换方式 近期有个临时任务,将系统中所有"帐"替换为"账&quo ...

  9. python替换文件内容_Python实现替换文件中指定内容的方法

    本文实例讲述了Python实现替换文件中指定内容的方法.分享给大家供大家参考,具体如下: 这里使用python编写的程序,实现如下功能:将文件中的指定子串 修改为 另外的子串 编写的python程序, ...

最新文章

  1. 3.6 BatchNorm 为什么起作用-深度学习第二课《改善深层神经网络》-Stanford吴恩达教授
  2. 2021暑假实习-SSM超市积分管理系统-day09笔记
  3. CV:深入浅出的讲解傅里叶变换(真正的通俗易懂)
  4. SQL逗号分隔的字段统计(摘自网络)
  5. 第二十二节: 以SQLServer为例介绍数据库自有的锁机制(共享锁、更新锁、排它锁等)和事务隔离级别 :
  6. 国土空间规划基数转换初探
  7. 【Python成长之路】从零做网站开发 -- 下拉选择项的实现
  8. list操作 rediscluster_redis3.0 cluster功能介绍
  9. 2019新悦动打火困难解决了吗_悦动大面积存在启动困难北京现代检查不出原因就换零件...
  10. android php 项目代码混淆,Android Studio配置反混淆的实现
  11. 基于安卓Android银行排队叫号系统设计与实现
  12. 图书信息管理系统(顺序表)
  13. 大家都在学Python,你和别人的差距在哪?
  14. 英语写计算机作文600字,介绍电脑 computer 英语作文
  15. 深度剖析 | SN 可微分学习的自适配归一化 (Switchable Normalization)
  16. 深信服面试常见算法题整理笔记
  17. Java架构师必备知识体系
  18. DataGrip 配置默认的项目目录
  19. 开源正当时,共赢新未来 OpenHarmony开发者大会成功召开
  20. 什么是聚合支付?聚合支付的优势?

热门文章

  1. HDMI 收发器简化家庭影院系统设计
  2. 2018计算机考研各科试卷分值分布
  3. LeetCode 2315. 统计星号
  4. React中文文档之Components and Props
  5. 计算机毕设项目:毕业论文管理系统(一)
  6. php仿苹果,关于8个超炫酷仿苹果应用的HTML5动画的图文详解
  7. threeJS导入FBX模型
  8. hdu1754(线段树单点更新)
  9. 多功能网络侦查OSINT工具,FinalRecon
  10. RPA在政企行业的应用