关于高德地图 V16.18.0.1141 手机版 修改思路说明

关于高德地图 V16.18.0.1141 手机版 修改思路说明

基本信息

项目 内容
原版版本 Amap V16.18.0.1141 (Build C3060)
原版大小 155MB
修改版大小 177MB
来源 小德车机 (www.xiaodecheji.com)

一、修改内容总览

功能 修改方式 涉及文件
签名绕过 替换Application父类 + Native Hook classes6.dex, classes9.dex, libSignatureKiller148.so
去广告 禁用底部Tab + 删除搜索广告逻辑 classes5.dex, classes6.dex
去建筑 修改地图渲染配置 map_assets/*.data
精简界面 隐藏消息/附近/打车Tab classes5.dex
比例自适应 修改地图配置 map_assets/*.data
内嵌原版APK 签名欺骗用 assets/origin148.apk
宣传信息 替换隐私说明文字 res/values/strings.xml

二、签名绕过方案 (SignatureKiller)

2.1 原理

修改版使用了不同的签名(ANDROID.RSA),无法通过高德自身的签名校验。采用以下方案绕过:

复制代码
┌─────────────────────────────────────────────────────────┐
│                    启动流程                              │
├─────────────────────────────────────────────────────────┤
│ 1. 高德启动 → 加载 NewMapApplication                    │
│ 2. 父类被改为 KillerApplication148                      │
│ 3. 静态初始化块 <clinit> 自动执行:                       │
│    a. killPM() → 替换 PackageManager 返回的签名信息      │
│    b. killOpen() → 配置 Native Hook 参数                │
│ 4. libSignatureKiller148.so 加载:                       │
│    a. xhook 框架 hook libc 的 open/openat 系统调用      │
│    b. 拦截对 APK 文件的读取                             │
│    c. 重定向到 files/origin148.apk(原版APK)           │
│ 5. 高德内部签名校验读取到的是原版APK → 校验通过          │
└─────────────────────────────────────────────────────────┘

2.2 涉及文件

文件 作用
classes9.dex KillerApplication148 主类 + 12个内部类 (14KB)
lib/arm64-v8a/libSignatureKiller148.so Native Hook 库 (19KB),基于 xhook 框架
assets/www.xiaodecheji.com.apk 嵌入的原版APK (155MB),用于签名欺骗

2.3 classes6.dex 修改

文件 : com/autonavi/minimap/lite/NewMapApplication.smali

复制代码
# 原版
.super Landroid/app/Application;



### 2.4 classes9.dex 关键路径 (硬编码)

assets/www.xiaodecheji.com.apk → 从APK内读取原版APK files/www.xiaodecheji.com.apk → 运行时释放到应用私有目录

复制代码
### 2.5 签名证书信息 (硬编码)

Subject: CN=minimap, OU=mobile department, O=autonavi, L=beijing, ST=beijing, C=cn 有效期: 2010-05-30 ~ 2065-03-03 序列号: 04 33 00 27

复制代码
---

## 三、去广告修改

### 3.1 底部Tab禁用 (classes5.dex)

三个Tab配置类被修改,返回值从 `true` 改为 `false`:

| 类名 | 隐藏的Tab | 修改内容 |
|------|-----------|----------|
| `HomeTabInitConfigMessageV2` | 消息 | `const/4 v0, 0x1` → `const/4 v0, 0x0` |
| `HomeTabInitConfigNearbyV2` | 附近 | `const/4 v0, 0x1` → `const/4 v0, 0x0` |
| `HomeTabInitConfigTaxiV2` | 打车 | `const/4 v0, 0x1` → `const/4 v0, 0x0` |

### 3.2 搜索结果去广告 (classes6.dex)

| 文件 | 修改内容 |
|------|----------|
| `SearchResultUseCaseImpl.smali` | 删除搜索结果广告判断方法 + isOffline() 方法 |
| `SearchClassifyDataSourceV2.smali` | 删除一级分类(levelOne)解析逻辑 |

### 3.3 首页按钮屏蔽 (classes5.dex)

**文件**: `ToolBoxDataHelper.smali` 相关方法

屏蔽首页部分功能按钮入口。

---

## 四、去建筑 / 地图配置修改

### 4.1 修改的配置文件

| 文件 | 原版大小 | 修改版大小 | 说明 |
|------|----------|------------|------|
| `map_assets/mapprofile_1_25_1776929002.data` | 3,002 | 3,022 | 地图渲染配置 |
| `map_assets/mapprofile_2_25_1776929002.data` | 2,835 | 2,861 | 地图渲染配置 |
| `map_assets/laneprofile_1_25_1776929002.data` | 2,644 | 2,671 | 车道渲染配置 |

### 4.2 新增资源文件

| 文件 | 大小 | 说明 |
|------|------|------|
| `assets/icons_5_25_1778498417.data` | 1.5MB | gzip压缩的图标资源包,替换地图图标 |

### 4.3 技术说明

这些 `.data` 文件是高德地图引擎的**编译型二进制配置**,不是简单的文本参数。修改后整个文件内容几乎全部变化(包含校验和/加密/链式哈希),**无法通过逐字节对比逆向具体改了哪个字段**。

需要使用高德地图引擎的专用配置工具重新生成,或逆向读取 `.data` 的代码才能理解具体格式。

---

## 六、MT管理器二次修改指南

### 6.1 准备工具

- MT管理器 (最新版)
- 需要root权限或虚拟环境


### 6.2 恢复建筑显示

需要替换原始的 `mapprofile_*.data` 和 `laneprofile_*.data` 文件为原版版本。

### 6.3 恢复被隐藏的Tab

在 `classes5.dex` 中找到对应的 `HomeTabInitConfig*` 类,将 `const/4 v0, 0x0` 改回 `const/4 v0, 0x1`。

---

## 七、安装注意事项

1. **必须先卸载原版高德**(签名不同,无法覆盖安装)
2. **仅支持 ARM64 架构**(libSignatureKiller148.so 只有 arm64-v8a)
3. **签名绕过依赖原版APK**:`assets/origin148.apk` 不能删除或损坏


---

## 八、技术栈

| 工具/框架 | 用途 |
|-----------|------|
| apktool 2.7.0 | APK 反编译 / 重打包 |
| ApkSignatureKillerEx | 签名绕过框架 (GitHub: L-JINBIN/ApkSignatureKillerEx) |
| xhook | Native Hook 框架 (静态链接在 .so 中) |
| smali/baksmali | DEX 反编译 / 重编译 |
| jarsigner / apksigner | APK 签名 |

---

## 九、文件清单

v16.18.apk (171MB)

├── classes.dex # 主DEX (未修改)

├── classes2.dex # (未修改)

├── classes3.dex # (未修改)

├── classes4.dex # (未修改)

├── classes5.dex # ✏️ 修改: Tab禁用 + 首页按钮屏蔽

├── classes6.dex # ✏️ 修改: Application父类 + 搜索去广告

├── classes7.dex # (未修改)

├── classes8.dex # (未修改)

├── classes9.dex # 🆕 新增: KillerApplication148 签名绕过

├── assets/

│ ├── www.xiaodecheji.com.apk # 🆕 原版APK (155MB)

│ ├── icons_5_25_1778498417.data # 🆕 图标资源包 (1.5MB)

│ ├── amap_configer.data # ✏️ 广告配置修改

│ └── map_assets/

│ ├── mapprofile_1_25_1776929002.data # ✏️ 去建筑配置

│ ├── mapprofile_2_25_1776929002.data # ✏️ 去建筑配置

│ └── laneprofile_1_25_1776929002.data # ✏️ 去建筑配置

├── lib/arm64-v8a/

│ └── libSignatureKiller148.so # 🆕 Native Hook 库 (19KB)

└── res/values/

└── strings.xml # ✏️ 宣传信息


根据文章标注的「资源编号」从网盘里获取对应资源: https://link.kxwjj.cn/aEQQze

原文:https://www.xiaodecheji.com/article/305

更多资源和修改教程尽在小德车机导航站(https://www.xiaodecheji.com

相关推荐
梁辰兴1 天前
微信小程序开发者工具下载与安装
微信·微信小程序·小程序·教程·软件安装·开发者工具
小锋学长生活大爆炸4 天前
【培训】Agent与OpenClaw
llm·agent·教程·科普·知识·培训·openclaw
小楼v5 天前
Kafka消息队列安装步骤及从0入门到基础核心掌握
java·kafka·消息队列·教程·安装
NPE~7 天前
[手写系列]从零到一:Github开源你的第一个项目
ai·开源·github·教程·项目实战·规范·yiqguard
谷哥的小弟7 天前
(最新版)VSCode安装图文详解教程
ide·vscode·编辑器·教程·前端开发·图文
xcLeigh8 天前
Python入门:Python3 operator模块全面学习教程
开发语言·python·学习·教程·python3·operator
xcLeigh8 天前
Python小游戏实战:实现2048游戏小游戏附源码
python·游戏·教程·pygame·2048·python3
嘛也学不会9 天前
0 吴恩达-AI agent 理论
人工智能·教程·设计原则·agnet 工作流·吴恩达 agent ai 课程
不正经绣才9 天前
【扣子Coze教程】1分钟提取500+小红书笔记评论,自动同步飞书(附源码)
飞书·教程·工作流·coze·扣子