> ## Documentation Index
> Fetch the complete documentation index at: https://aether.baimoqilin.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Native Mod 安全模式：Aether 中的崩溃循环恢复

> Aether 的 Native Mod 安全模式会在启动被中断后自动跳过 native mods，让你能够恢复与调试，而不会陷入启动循环。

Aether 通过自动安全模式保护你免受崩溃循环的 Native Mods 影响。若某个 Native Mod 在 UI 稳定前导致崩溃，下次启动会激活安全模式并跳过所有 Native Mods — 从而让你打开应用、诊断问题并恢复。

## 工作原理

安全模式使用持久化的启动标记来检测被中断的启动：

1. 在加载任何 Native Mod 之前，Aether 在应用存储中设置持久化的 `startup_in_progress` 标记。
2. 仅当所有 mods 加载完成，**并且**第一个 Activity 保持稳定数秒（当前为 5 秒）后，该标记才会被清除。
3. 若进程在标记仍处于武装状态时退出 — 崩溃、ANR、OOM 或强制结束 — 下一次启动会检测到武装标记并激活安全模式。

## 安全模式下会发生什么

安全模式激活时：

* 本次启动**跳过**所有 Native Mods — 不加载任何 DEX。
* Script Mod（TypeScript）与 Pi 扩展仍完全可用，并支持热重载。
* 若可用，会记录崩溃发生时正在加载的最后一个入口，并在 UI 中展示。
* **设置 → 扩展** 会显示「Native Mod 安全模式」横幅，标识疑似导致崩溃的 mod。

## 从安全模式恢复

<Steps>
  <Step title="打开 设置 → 扩展">
    启动 Aether。由于跳过了 Native Mods，即使某个 mod 在加载时崩溃，应用也能
    正常启动。
  </Step>

  <Step title="查看被标记的入口">
    安全模式横幅会显示崩溃发生时正在加载的最后一个入口。据此识别问题扩展。
  </Step>

  <Step title="移除或修复问题扩展">
    卸载有问题的扩展，或使用修复后的 DEX 产物更新它。
  </Step>

  <Step title="重新启用 Native Mods">
    在安全模式横幅中点按 **「重新启用 Native Mods」**。这会清除安全模式标志。
    Native Mods 将在下次重启时加载。
  </Step>
</Steps>

## 手动安全模式（测试）

在安装你尚不确定的 Native Mod 之前，可主动武装安全模式：

* **设置 → 扩展** 中随时提供 **「下次以 Native Mod 安全模式启动」** 操作，即使当前未处于安全模式。
* 当你预计新装或更新的 Native Mod 可能出问题时使用，以便在重启前准备好安全恢复路径。

<Warning>
  安全模式是崩溃循环恢复机制，不是安全沙箱。它仅在进程在启动标记被清除前崩溃或
  被杀死时激活。若行为异常的 mod 成功加载，但在运行时造成问题，安全模式不会
  对其进行约束。
</Warning>

<Note>
  Script Mods 与 Pi 扩展从不会被安全模式跳过。它们可在不重启 Aether 的情况下重载，
  不会在启动时将进程置于崩溃循环风险中。
</Note>
