---
title: "保存与发布流程"
description: "将流程保存为草稿并发布给用户"
---

[流程编辑器](adapty-flow-builder)将保存与发布两个操作分开处理。草稿用于在 Adapty 看板中保留你的工作进度，而发布则会通过 SDK 将当前版本提供给用户。本文介绍这两项操作及其适用场景。
## 将流程保存为草稿 \{#save-a-flow-as-a-draft\}

:::warning
无效的[远程配置](customize-flow-with-remote-config)会导致草稿无法保存。
:::

付费墙编辑工具每分钟自动保存一次进度。

如需手动保存草稿，请点击付费墙编辑工具右上角的 **Save draft**，或按 **Cmd/Ctrl + S**。

草稿仅在看板内可见，不会影响用户在应用中看到的内容，即使该流程已分配至某个[版位](placements)也是如此。

## 发布流程 \{#publish-a-flow\}

发布操作会通过 SDK 将当前版本的流程提供给用户。发布后，新版本将替换同一流程之前已发布的任何版本。

:::note
如需将流程添加到[版位](placements)，请先发布它。草稿状态的流程无法添加。
:::

要发布流程，请点击付费墙编辑工具右上角的 **Publish to Live**。

接下来发生的情况取决于该流程是否已分配到某个版位：
- **流程已关联版位**：用户下次请求该版位时即可看到新版本。
- **流程未关联版位**：将流程添加到[版位](create-placement)，以开始向用户展示。

:::tip
当每个操作、页面和产品元素均配置完成后，流程即可发布。常见问题请参阅[问题排查](#troubleshooting)。
:::

:::warning
[自定义字体](using-custom-fonts-in-flow-builder)不会随流程一起打包——你必须将每个字体文件添加到应用包中。如果缺少字体文件，用户将看到系统默认字体。

若要在已发布的流程中更改字体且不影响旧版本：请复制该流程，在副本中更改字体，然后将副本通过[目标受众](add-audience-paywall-ab-test)定向到包含该字体的应用版本。
:::
## 流程状态 \{#flow-status\}

每个流程在流程列表中都会显示一个状态，反映该流程在保存和发布生命周期中所处的阶段。
| 状态 | 含义 |
| :----- | :------ |
| **Draft** | 该流程从未发布过。目前只有草稿，用户尚不可见。需要先发布草稿，才能将其添加到[版位](placements)。 |
| **Dirty** | 该流程已发布，但存在已保存但尚未发布的编辑内容。在再次发布之前，用户看到的仍是上一个已发布版本。 |
| **Publishing** | 正在发布中。 |
| **Failed** | 上次发布尝试失败。如果存在已发布版本，用户仍将看到该版本。 |
| **Published** | 最新保存的版本已上线，没有未发布的编辑内容。 |
| **Archived** | 该流程已删除。 |
## 故障排查 \{#troubleshooting\}

如果存在以下任何问题，您将无法发布或预览流程。

- 交互配置不完整。常见情况包括：
    - **打开 URL** 操作没有设置目标 URL。
    - **跳转到页面** 操作没有设置目标页面——如果在设置操作后目标页面被删除，也会出现此问题。
    - **条件操作** 没有设置运算符或值。
    - **设置变量** 操作没有指定变量/值。
    - **购买** 操作没有关联产品（应用内购买）或没有设置 Web 付费墙 URL（网页支付）。
    - **自定义** 操作没有设置 Action ID。
    - **显示弹窗** 操作的标题或消息为空。
    - **显示**或**隐藏**操作没有选择任何元素。
- **页面中没有任何元素**。
- 产品元素**没有关联产品**——如果删除了所引用的产品，可能会出现此问题。
- **远程配置** JSON 无效会导致整个交付流程中断——您甚至无法保存草稿。

在发布前，请通过 [Adapty 应用](paywall-device-compatibility-preview)预览你的流程，提前发现问题。如果流程在预览中加载失败，请查看错误信息了解详情。