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

# 开发者

> 将 OneSignal 集成到移动和 Web 应用程序的开发者指南：SDK 设置、API 参考、用户身份认证以及跨移动和 Web 的测试。

本指南帮助开发者将 OneSignal 集成到移动和 Web 应用程序中。首次设置请按顺序完成各节，或直接跳到所需部分。

1. [**开始使用**](#get-started) — 访问您的 OneSignal 应用并查找 API 密钥
2. [**设置消息渠道**](#set-up-messaging-channels) — 安装 SDK 并配置渠道
3. [**SDK 和 API 参考**](#sdk-and-api-reference) — 详细的方法、类和端点文档
4. [**用户和身份**](#users-and-identity) — 识别用户、管理订阅并保护访问安全
5. [**教程**](#tutorials) — 常见使用场景的分步指南
6. [**测试和调试**](#testing-and-debugging) — 在上线前验证您的集成
7. [**数据分析与 Webhook**](#analytics-and-webhooks) — 追踪性能并在服务器端接收消息事件

***

## 开始使用

如果您的团队已有 OneSignal 账户，请让管理员[邀请您](./manage-team-members)加入组织。否则，请[创建账户](https://onesignal.com)开始使用。

您的 OneSignal 应用是用户和消息数据存储的地方。每个应用都有其自己的应用 ID、API 密钥和消息渠道。您可以在单个组织中拥有多个应用，用于不同的项目或环境。

<Columns cols={2}>
  <Card title="应用、组织和账户" icon="building" href="./apps-organizations">
    应用、组织和账户之间的关系。
  </Card>

  <Card title="密钥和 ID" icon="key" href="./keys-and-ids">
    查找用于身份验证的应用 ID、REST API 密钥和组织 ID。
  </Card>

  <Card title="添加团队成员" icon="user-plus" href="./manage-team-members">
    邀请开发者并在您的组织中分配角色。
  </Card>

  <Card title="使用情况和计费" icon="credit-card" href="./billing-faq">
    计费、发票和使用详情。
  </Card>
</Columns>

***

## 设置消息渠道

安装 OneSignal SDK 以创建并追踪各平台的用户参与度。每个消息渠道都有自己的设置指南，涵盖凭据、SDK 初始化和教程。

<Columns cols={3}>
  <Card title="移动 SDK 设置" icon="mobile" href="./mobile-sdk-setup">
    iOS、Android、华为和亚马逊的 SDK 设置。支持推送通知、应用内消息和 Live Activities。
  </Card>

  <Card title="网页推送" icon="globe" href="./web-sdk-setup">
    Web SDK 安装和浏览器推送通知设置。
  </Card>

  <Card title="电子邮件" icon="envelope" href="./email-setup">
    电子邮件渠道配置和发件人域名验证。
  </Card>

  <Card title="应用内消息" icon="window-maximize" href="./in-app-messages-setup">
    在您的移动应用内显示丰富的交互式消息。
  </Card>

  <Card title="短信" icon="comment-sms" href="./sms-messaging">
    SMS 渠道设置和运营商注册。
  </Card>

  <Card title="RCS" icon="message" href="./rcs-messaging">
    带有品牌内容和已读回执的富媒体消息。
  </Card>

  <Card title="Live Activities" icon="tower-broadcast" href="./live-activities">
    iOS 动态锁屏更新。Android 有类似功能可用。
  </Card>
</Columns>

***

## SDK 和 API 参考

客户端 SDK、服务器 SDK 和 REST API 的详细文档。

<Columns cols={2}>
  <Card title="移动 SDK 参考" icon="mobile" href="./mobile-sdk-reference">
    iOS、Android 和跨平台 SDK 的方法、类和事件钩子。
  </Card>

  <Card title="Web SDK 参考" icon="globe" href="./web-sdk-reference">
    初始化、用户管理、订阅方法和自定义触发器。
  </Card>

  <Card title="服务器 SDK 参考" icon="server" href="./server-sdk-reference">
    安装和配置适用于 Node.js、Python、Java、Go、PHP、Ruby、C# 和 Rust 的服务器 SDK。
  </Card>

  <Card title="REST API 概览" icon="code" href="/reference/rest-api-overview">
    端点、身份验证、速率限制和请求/响应格式。
  </Card>

  <Card title="交易性消息" icon="paper-plane" href="./transactional-messages">
    通过 API 发送带有个性化数据的 OTP、收据和时效性警报。
  </Card>

  <Card title="GitHub 上的服务器 SDK" icon="github" href="https://github.com/OneSignal/sdks#server-sdks">
    所有服务器 SDK 库的源代码和示例。
  </Card>
</Columns>

***

## 用户和身份

OneSignal 为每个人分配一个 **OneSignal ID**，并将其设备、电子邮件地址和电话号码作为**订阅**进行追踪。用户在匿名状态下，直到您使用**外部 ID** 调用 `login` 进行识别。识别用户可跨渠道和设备统一其订阅。

<Columns cols={2}>
  <Card title="用户" icon="users" href="./users">
    用户模型、外部 ID、匿名用户与已识别用户、登录/登出。
  </Card>

  <Card title="订阅" icon="address-book" href="./subscriptions">
    接收您消息的设备、电子邮件地址和电话号码。
  </Card>

  <Card title="身份验证" icon="shield-halved" href="./identity-verification">
    需要服务器生成的 JWT 以防止用户冒充。
  </Card>

  <Card title="别名" icon="fingerprint" href="./aliases">
    将自定义标识符映射到用户，用于跨平台追踪和集成。
  </Card>

  <Card title="标签" icon="tags" href="./add-user-data-tags">
    在用户上设置键值数据，用于个性化和分段。
  </Card>

  <Card title="自定义事件" icon="bolt" href="./custom-events">
    追踪用户行为以触发 Journey 或支持分析。
  </Card>
</Columns>

***

## 教程

逐步指南，介绍如何使用 OneSignal 实现常见的消息场景。

<Card title="教程和使用案例" icon="graduation-cap" href="./tutorials">
  浏览废弃购物车、入门流程、重新参与活动等的实施指南。
</Card>

***

## 测试和调试

在向全体受众发送之前，验证您的集成是否正常工作。

<Tip>
  始终先使用[测试订阅](./test-users)进行测试。这可让您在不影响真实用户的情况下验证送达、渲染和深度链接。
</Tip>

<Columns cols={2}>
  <Card title="测试订阅" icon="vial" href="./test-users">
    查找和配置推送、电子邮件和 SMS 的测试订阅。
  </Card>

  <Card title="调试日志" icon="bug" href="./capturing-a-debug-log">
    从移动应用捕获详细的 SDK 日志以进行故障排除。
  </Card>

  <Card title="移动端故障排除" icon="mobile" href="./mobile-troubleshooting">
    解决常见的推送送达、APNS 和应用内消息问题。
  </Card>

  <Card title="网页端故障排除" icon="globe" href="./troubleshooting-web-push">
    修复 Service Worker、浏览器兼容性和网页推送问题。
  </Card>
</Columns>

***

## 数据分析与 Webhook

追踪消息性能并在服务器端接收消息事件，用于分析、自动化或与外部系统同步。

<Columns cols={2}>
  <Card title="事件流" icon="signal-stream" href="./event-streams">
    实时将点击、打开、接收等消息事件流传输到您的数据仓库。
  </Card>

  <Card title="Journey Webhook" icon="route" href="./journeys-webhook">
    从 Journey 步骤向您的服务器发送 HTTP 请求。
  </Card>

  <Card title="网页推送 Webhook" icon="link" href="./webhooks">
    网页推送显示、点击和关闭事件的 HTTP 回调。
  </Card>
</Columns>

***

## 常见问题

### 如何验证 REST API 请求？

在 `Authorization` 标头中以 Bearer Token 形式包含您的 REST API 密钥：`Authorization: Key YOUR_REST_API_KEY`。在 OneSignal 仪表板的**设置 > 密钥和 ID** 中查找您的密钥。详情请参阅[密钥和 ID](./keys-and-ids)。

### 客户端 SDK 和服务器 SDK 有什么区别？

**客户端 SDK**（移动和 Web）在用户设备上的应用中运行。它们处理订阅注册、权限提示、应用内消息以及通过 `login` 进行用户识别。**服务器 SDK** 在您的后端运行，调用 REST API 发送消息、管理用户和导出数据。

### 如何跨设备识别用户？

在用户登录后，在每台设备上调用 `OneSignal.login("your_external_id")`。OneSignal 会将所有具有相同外部 ID 的订阅合并到单个用户下。实现详情请参阅[用户](./users#external-id)。

### 我需要设置身份验证吗？

身份验证是可选的，但强烈建议在生产应用中启用。如果不启用，任何客户端都可以使用任意外部 ID 调用 `login`。启用[身份验证](./identity-verification)需要更新 OneSignal SDK 以使用服务器生成的 JWT，从而防止冒充。

***

<Info>
  需要帮助？

  与我们的支持团队聊天或发送邮件至 `support@onesignal.com`

  请包含以下信息：

  * 您遇到的问题详情以及复现步骤（如有）
  * 您的 OneSignal 应用 ID
  * 外部 ID 或订阅 ID（如适用）
  * 您在 OneSignal 控制台中测试的消息 URL（如适用）
  * 任何相关的[日志或错误信息](/docs/cn/capturing-a-debug-log)

  我们很乐意为您提供帮助！
</Info>
