# 黄果短剧启动闪退诊断 检查时间:2026-09-09,Asia/Shanghai。 直接故障已确认:黄果短剧在应用加固库 `libjiaguv1.so` 的 `ndk_init` 初始化过程中发生原生崩溃。两份已安装应用均能稳定复现,尚未进入应用主界面。 现有证据最支持加固模块与当前 MuMu Android 15 / ARM64 转译运行环境不兼容。仅凭崩溃堆栈,无法最终区分加固库自身缺陷、转译层兼容问题或加固模块的环境检测;不能断言是故意封禁模拟器或 Root 检测。 ## 实测结果 | 项目 | 第一份应用 | 第二份应用 | | --- | --- | --- | | 桌面名称 | 黄果短剧 | 黄果短剧 | | 包名 | `dark.qgbevkxqql.ebyrhddxwd` | `dark.ufnoinfolj.gfvrmybvrf` | | 版本 | 1.0.3 / versionCode 1 | 1.0.3 / versionCode 1 | | 安装所选 ABI | arm64-v8a | arm64-v8a | | SDK | minSdk 24 / targetSdk 36 | minSdk 24 / targetSdk 36 | | 本次启动 | 15:48:22.014,PID 30459 | 15:49:40.866,PID 30638 | | 致命信号 | 15:48:22.506 | 15:49:41.313 | | 启动至致命信号 | 约 0.49 秒 | 约 0.45 秒 | | 系统退出原因 | APP CRASH(NATIVE),status=11 | APP CRASH(NATIVE),status=11 | 两份应用的加固库 BuildId 相同:`cda80a0729e49c2a514407b56d77b8cb9c37e01e`,崩溃位置均为 `ndk_init+248`。 关键堆栈: ```text Fatal signal 11 (SIGSEGV), code 2 (SEGV_ACCERR) #00 .../.jiagu/libjiaguv1.so (ndk_init+248) #01 .../.jiagu/libjiaguv1.so (native_attach(...)+60) #02 /system/lib64/libtcb.so ``` 宿主 x86_64 崩溃堆栈同时落在 `/system/lib64/libhoudini.so`。应用进程日志显示它已启用 arm64 Native Bridge,并成功初始化 Houdini,随后加载加固库并在初始化阶段退出。证据支持崩溃发生于加固模块与 ARM 转译链路中,不代表已确定哪一方存在实现缺陷。 SIGSEGV 属于本地代码崩溃信号,参见 [Android 官方崩溃说明](https://developer.android.com/topic/performance/vitals/crash);堆栈阅读方法见 [AOSP 原生崩溃诊断](https://source.android.com/docs/core/tests/debug/native-crash)。官方资料用于解释日志类型,不是本应用兼容问题的官方确认。 ## 环境与判断边界 - MuMu 6.6.0.0,Android 15 / API 35,系统 x86_64;ABI 列表为 `x86_64,arm64-v8a,x86`。 - 两份应用安装所选 ABI 都是 arm64-v8a,在此实例中经 Houdini 转译运行。 - 宿主配置启用了 Root 模式;仅记录环境事实,没有证据证明 Root 是这次崩溃的触发条件。ADB shell 未取得 Root,也未访问受限的模块目录。 - 虚拟机和 Vulkan 渲染器均成功初始化。系统继续运行,两个目标应用进程分别崩溃。 - 本次故障发生于加固初始化阶段,日志不是连接超时或服务端错误;切换代理不针对当前已确认的崩溃点。 - 不能仅因 `targetSdk 36` 高于运行系统 API 35 就判定不兼容。应用已安装并进入启动流程。 - 没有读取应用源码、完整调试符号或进行其他系统版本/真机对照,因此不能声称已经修复,或保证换环境一定有效。 ## 后续验证路径 1. 用同一安装包在 ARM64 安卓真机对照启动,判断是否仅在模拟器出现。 2. 用独立、干净的 Android 12/其他受支持版本模拟器实例对照启动,保留当前实例;这能帮助区分 Android 15、实例配置及转译兼容差异,尚未执行。 3. 若仍闪退,将加固库 BuildId、上述堆栈和系统版本交给应用开发方,要求检查或更新加固组件;安装经其确认兼容的版本。 ## 本地证据 - `startup-a.txt`、`startup-b.txt`:本次两个应用进程的完整启动日志。 - `crash-reproduced-a.txt`、`crash-reproduced-b.txt`:本次采集的崩溃缓冲区片段。 - `exit-info-a.txt`、`exit-info-b.txt`:Android 系统记录的退出原因和历史复现。 - `package-a.txt`、`package-b.txt`:版本、ABI 和安装元数据。 - `host-findings.md`:独立核对的 MuMu 配置、虚拟化及图形日志证据。 - `crash-before.txt`:复现前保留的历史崩溃缓冲区。 本次仅打开应用复现并读取日志。没有卸载应用、清理应用数据、重启模拟器或修改代理、Root、系统设置。