> For the complete documentation index, see [llms.txt](https://developers-apps-in-toss.toss.im/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developers-apps-in-toss.toss.im/landing-page/landing-page-zh/checklist/app-nongame.md).

# 非游戏发布指南

这是适用于迷你应用的通用标准和各功能的上线指南。上线前请务必确认内容并遵守指南。

如果未遵守以下检查清单或发现暗黑模式，审核将不会通过；即使在上线后才发现，也可能限制服务曝光或中止服务。

{% hint style="info" %}
**请参考**

以下上线指南条目会持续更新。
{% endhint %}

### 接入及应用内功能

* [ ] 迷你应用可以正常打开。
* [ ] 以“应用内功能”介绍的所有服务功能，在迷你应用中也可以同样使用。
* [ ] 在“应用内功能”中注册的 scheme 可正常连接。
* [ ] 通过应用 scheme 进入后，返回按钮可正常工作。&#x20;

### 导航栏

* [ ] 正在使用 Apps in Toss 导航栏。
* [ ] 如果显示返回按钮，在所有页面都能正常工作。
* [ ] 如果在导航栏显示应用名称和 Logo，则使用应用信息中注册的品牌 Logo 和迷你应用名称（韩文）。
* [ ] 如果显示主页按钮，则可正常工作。（可选）
* [ ] 迷你应用功能按钮最多只显示 1 个。（可选）
* [ ] Toss 导航栏的返回按钮与迷你应用自行实现的返回按钮不会同时显示。
* [ ] 更多按钮（⋯）中可正常提供 Toss 通用功能（举报、分享等）。&#x20;
* [ ] 关闭按钮和返回按钮会显示，且行为明确。
* [ ] 在首屏点击返回时，迷你应用会退出。

### 用户识别键发放

* [ ] 确认并保存用户标识符值后，迷你应用可正常启动。&#x20;
* [ ] 用户的迷你应用使用记录会保留。&#x20;
* [ ] 即使退出迷你应用后再次进入，所需数据也会保留。&#x20;

### 安全与稳定性

* [ ] 不能使用执行从外部传入代码的功能。（例如： `eval` 等）
* [ ] 无论通过浏览器历史操作还是 WebView 嵌入等任何方式，都不能跳转到自家网站（Toss 域名外部）或渲染其内容。最终展示的内容必须在 Toss 域名内渲染。（例如： `window.location.replace`、加载自家域名的 WebView/iframe 嵌套等）
* [ ] 不能使用服务端渲染（SSR）。只能使用客户端渲染（CSR）或静态站点生成（SSG）方式。
* [ ] 使用 WebSocket 时，仅使用加密的 `wss://` 连接。（例如：Firebase Firestore、Supabase Realtime 等）
* [ ] API 通信仅使用加密的 HTTPS 连接。
* [ ] 用户登录信息、支付（Toss Pay、应用内支付）记录等敏感信息必须加密后存储到数据库中。
* [ ] 建议在从客户端向自有服务器传输个人信息时也进行加密。

### 服务使用行为

* [ ] 按下 Android 系统返回键时，会返回上一页或退出迷你应用。
* [ ] 除地图等必要情况外，基于手势的缩放功能会被禁用。
* [ ] 迷你应用主题以浅色模式实现。
* [ ] 所有 UI 组件都按预期工作。
* [ ] 滚动、触摸、页面切换等交互响应不会延迟 2 秒以上。
* [ ] 即使退出迷你应用后再进入，所需数据也会保留。
* [ ] 服务使用所必需的外部链接可正常打开。
* [ ] 在分享功能中 `intoss-private://` 不使用链接 `intoss://` 使用 scheme。
* [ ] 迷你应用文案中不包含粗俗语、俚语或过度流行语。&#x20;
* [ ] 不包含违法、色情等违规内容。
* [ ] 位置、通知等设备权限会先获得用户同意。
* [ ] 即使用户不授予权限，其余功能也能继续正常运行。
* [ ] 网络使用量不会异常激增。
* [ ] 内存使用量不会异常激增。

### UX

* [ ] 一进入迷你应用，底部弹窗（Toss 登录、通知同意书等）不会自动出现。
* [ ] 在切换特定页面时，不会通过底部弹窗强制引导用户操作。&#x20;
* [ ] 在所有页面中，用户离开迷你应用的方法都很明确。&#x20;
* [ ] 看到 CTA 按钮时，可以预测下一步会发生什么操作。
* [ ] 不会通过链接或组件诱导用户跳转到自家服务或安装自家应用。&#x20;
* [ ] 应用内广告不会展示在 Intro/Loading/Cutscene/弹窗模态等临时页面中。&#x20;
* [ ] 不会误导或强制引导用户点击应用内广告。

### Toss 登录

* [ ] 使用 Toss 登录时，会在 Intro 页面提供服务说明，以便用户了解这是哪种服务。&#x20;
* [ ] 设置的 Toss 登录条款页面 URL 可正常显示。&#x20;
* [ ] 在 Toss App 中解除登录关联后，再次进入迷你应用时，会显示重新请求登录的条款页面。
* [ ] 在 Toss App 中解除登录关联后，用户数据不会留在迷你应用中。&#x20;
* [ ] 不提供非 Toss 登录的自家登录或其他登录方式。

### 应用内支付

* [ ] 进行应用内支付时，迷你应用中正在播放的音乐会暂停。
* [ ] 应用内支付订单金额与 Google 或 Apple 支付窗口中显示的金额一致。&#x20;
* [ ] 应用内支付可正常进行。也会在 Google 支付测试环境中进行确认。
* [ ] 应用内支付完成后返回迷你应用时，支付结果会正常反映。
* [ ] 在应用内支付窗口选择取消后，会返回订单页面。
* [ ] 因余额不足等导致支付失败时，用户能够了解失败原因。
* [ ] 应用内支付取消可正常处理。
* [ ] 用户可以确认应用内支付商品的支付记录。
* [ ] 即使更换登录 Toss App 的设备，之前已支付的应用内支付数据（如通行证等）也会保留。&#x20;

### Toss Pay

* [ ] 进行 Toss Pay 快捷支付时，迷你应用中正在播放的音乐会暂停。
* [ ] 订单金额与 Toss Pay 支付窗口中显示的金额一致。
* [ ] Toss Pay 支付失败时会显示错误消息，用户能够了解失败原因。&#x20;
* [ ] 在 Toss Pay 支付前选择取消时，会返回上一页面。
* [ ] 不提供 Toss Pay 以外的其他支付方式。
* [ ] 在 Toss Pay 支付窗口选择取消后，会进入订单页面。

### 应用内广告

* [ ] 应用内广告播放时，迷你应用中正在播放的音乐会暂停。
* [ ] 遵守 Toss Ads SSP 政策。（[#](https://developers-apps-in-toss.toss.im/documentation/common/monetization/iaa/interstitial-rewarded-ad#policy))
* [ ] 非测试广告的真实应用内广告可正常展示，且不会中途结束或闪退。
* [ ] 不会在用户难以预料的时机展示应用内广告。&#x20;
* [ ] 应用内广告可正常展示，且不会中途结束或闪退。
* [ ] 应用内广告会预先加载，不会在广告播放时实时加载。&#x20;
* [ ] 应用内广告结束后会正常返回迷你应用页面。&#x20;
* [ ] 应用内广告结束后，迷你应用音乐会重新播放。
* [ ] 完整观看奖励广告后，奖励会正常发放。&#x20;
* [ ] 横幅广告会展示在合适的位置。（上方/中间/下方）&#x20;
* [ ] 横幅广告仅在可滚动页面中展示。&#x20;

### 分享奖励

* [ ] 设置的分享奖励页面可正常显示。&#x20;
* [ ] 关闭分享奖励页面后，会正常返回迷你应用页面。
* [ ] 好友邀请完成后，奖励会正常发放。&#x20;


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://developers-apps-in-toss.toss.im/landing-page/landing-page-zh/checklist/app-nongame.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
