# 设备标识符

有两种方法可以识别在 Pushwoosh 注册的特定设备——硬件 ID (HWID) 和推送令牌 (push token)。

## HWID

HWID（或硬件 ID）是 Pushwoosh SDK 分配给设备的关键标识符。

#### Android HWID

对于 Android 设备，HWID 是由设备上安装的第一个带有 Pushwoosh SDK 的应用程序生成的随机字母和数字集。它随后会与包含 Pushwoosh SDK 的其他应用程序共享，因此所有这些应用程序最终都会有相同的 HWID。

但是，如果用户删除了所有带有 Pushwoosh SDK 的应用程序，然后重新安装了其中一些，系统将再次生成一个新的 HWID。

Android HWID 示例：`5dcaed99-e1e0-44dc-bde2-b96188b99e9e`

#### iOS HWID

对于 iOS 设备，IDFV ([Identifier for Vendor](https://developer.apple.com/documentation/uikit/uidevice/1620059-identifierforvendor)) 被用作设备的 HWID。只要设备上至少安装了一个来自同一供应商的应用程序，它就不会改变。

iOS HWID 示例（仅限大写！）：`CBAF8ED1-17FB-49A3-73BD-DC79B63AEF93`

## 推送令牌 (Push token)

推送令牌 (push token)（也称设备令牌）是由 Apple 或 Google 推送通知网关为“应用程序-设备”组合颁发的唯一密钥。它允许网关和推送通知提供商路由消息，并确保通知被送达到其预期的唯一“应用程序-设备”组合。

#### iOS 推送令牌

iOS 设备推送令牌是包含 64 个十六进制符号的字符串。iOS 推送令牌示例：`03df25c845d460bcdad7802d2vf6fc1dfde97283bf75cc993eb6dca835ea2e2f`

<Aside type="caution">
在 API 请求中定位特定设备时，请确保您使用的 iOS 推送令牌为**小写**。
</Aside>

#### Android 推送令牌

Android 设备推送令牌的长度可能不同（通常小于 255 个字符），并且通常以 APA91b… 开头。但是，它也可能有一个以冒号分隔的前缀。Android 推送令牌示例：`APA91bFoi3lMMre9G3XzR1LrF4ZT82_15MEICogXSLB8-MrdkRuRQFwNI5u8Dh0cI90ABD3BOKnxkEla8cGdisbDHl5cVIkZah5QUhSAxzx4Roa7b4xy9tvx9iNSYw-eXBYYd8k1XKf8Q_Qq1X9-x-U-Y79vdPq`

<Aside type="caution">
使用原始设备令牌来定位特定设备不是最可靠的方法，因为 FCM 推送令牌会不时更改，而且很难判断更改的频率。
</Aside>

<Aside type="caution" title="重要">
要获取 HWID 和推送令牌，您需要开发团队的协助。请与他们分享[此链接](/zh/developer/pushwoosh-knowledge-hub/device-identifiers#how-to-obtain-hwid-and-push-token)以获取详细说明。
</Aside>