Android 第三方app https 抓包

工具选择

Charles 或 Fiddler 都可以

在PC上安装工具并进行设置

Charles
Fiddler

设置按官网说明设置一下好。
Charles设置
Fiddler设置

Android Api Level >= 24 SSL特殊设置

当Android 的 Api Level > 24时需要修改一下app的一起配置

1.在项目中添加 Android/src/main/res/xml/network_security_config.xml

xml 复制代码
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <base-config>
        <trust-anchors>
        <!-- Trust preinstalled CAs -->
        <certificates src="system" />
        <!-- HERE: Additionally trus user-added CAs -->
        <certificates src="user"/>
    </trust-anchors>
    </base-config>
</network-security-config>

2.在AndroidManifest.xml中的application中添加networkSecurityConfig属性

xml 复制代码
android:networkSecurityConfig="@xml/network_security_config"

结果如下:

xml 复制代码
<application
    android:name="com.tns.NativeScriptApplication"
    android:allowBackup="true"
    android:icon="@drawable/icon"
    android:networkSecurityConfig="@xml/network_security_config">
    ...

问题

我是想要查看别人的apk包,要怎么添加上面提到的配置呢?

方案

1. apktool 解包
shell 复制代码
apktool d xxx.apk -o xxx_folder
2. 修改及添加相关xml配置
3. apktool 打包
shell 复制代码
apktool b xxx_folder -o xxx_tmp.apk
4. 使用zipalign将apk包4字节对齐
shell 复制代码
zipalign -p -f -v 4 xxx_tmp.apk xxx_final.apk
5. 签名

不签名的apk是无法安装的, 使用自己的key签名

shell 复制代码
apksigner sign --ks <your_keystore> --ks-key-alias <your_key_alias> --out xxx_final_sign.apk xxx_final.apk

xxx_final_sign.apk 即为修改后的最终文件。

相关推荐
龙之叶1 分钟前
【Android Monkey源码解析一】-系统执行
android
Fate_I_C7 分钟前
Kotlin 中 `@JvmField` 注解的使用
android·开发语言·kotlin
大大祥8 分钟前
一个kotlin实现的视频播放器
android·开发语言·kotlin·音视频
水月wwww16 分钟前
【计算机网络】期末知识点梳理
网络·tcp/ip·计算机网络·https
卸载引擎23 分钟前
vue3+vite如何兼容低版本浏览器的白屏问题(安卓7/ios11)
android·javascript
笔夏27 分钟前
【安卓学习之myt】git常用命令
android·git
Eastmount31 分钟前
[论文阅读] (47)LAMD: 基于大模型上下文驱动的Android恶意软件检测与分类
android·论文阅读·大模型·系统安全·恶意代码检测
科技块儿32 分钟前
【离线环境部署】在内网系统中搭建与维护IP离线数据库的完整方案
数据库·网络协议·tcp/ip
毕设源码-钟学长32 分钟前
【开题答辩全过程】以 基于安卓的家政服务app为例,包含答辩的问题和答案
android
zhangsansecond1 小时前
vs创建 基于ASP.NET Framework 的 SOAP 协议 Web 服务,https无法访问
前端·https·asp.net