Outsystems
安装 Pushwoosh 插件
Anchor link to首先,从 OutSystems Forge 安装 Pushwoosh 插件。最快的方法是进入您开发环境中的 OutSystems 选项卡,并从那里进行安装。
配置 Pushwoosh
Anchor link to您需要为您支持的每个平台配置 Pushwoosh。配置完成后,您将从 Pushwoosh 获得一个 Application Code (应用程序代码),该代码将与您的插件一起使用。
针对 iOS
Anchor link to了解如何为 iOS 配置 Pushwoosh。
针对 Android
Anchor link to将 Pushwoosh 插件添加到您的应用程序
Anchor link to- 在您的应用程序中,使用“管理依赖项…” (Manage Dependencies…) 添加对 Pushwoosh 插件的引用。

-
将 “PushwooshNotifications” 块添加到:
- 如果您的应用程序没有登录功能,则添加到 “Layout” 块
- 如果您的应用程序有登录功能,则添加到 “LayoutBlank” 块
添加 “PushwooshNotifications” 块时,请避免将其添加到占位符 (placeholders) 内,因为有些占位符仅在设计时可用,在运行时 Pushwoosh 将无法工作。
-
在 PushwooshNotifications 中设置以下参数:
- PushwooshApplicationCode: 您在 Pushwoosh 中创建应用程序后获得的 Pushwoosh Code。
- FCMSenderId: 您在配置 Android 时获得的标识号。如果您的应用程序仅适用于 iOS,则可以将其留空。
- NotificationReceivedEvent (可选): 当应用程序处于前台状态时收到通知时调用的事件。
- NotificationOpenedEvent (可选): 当用户点击设备上的通知时调用的事件。
如果您在 Android 应用中使用 Pushwoosh 插件,请执行以下操作:
- 从 Firebase 获取
google-services.json文件。Google 服务的包名必须与正在构建的 OutSystems 应用程序的应用标识符相匹配。 - 创建一个在根目录包含
google-services.json的 zip 文件。 - 将上一步中的 “google-services.zip” 文件上传到您的 OutSystems 应用程序,并确保:
- 将“名称” (Name) 设置为 “google-services.zip”
- 将“部署到目标目录” (Deploy to Target Directory) 设置为 “google-services”

在构建时设置 Application Code (推荐)
Anchor link to从 Pushwoosh 插件组件版本 4.7.0 开始(要更新:请从 Forge 安装较新版本,在“管理依赖项”中刷新依赖项,并生成新的原生构建),Application Code 和 Device API 令牌可以写入原生构建本身。将它们作为首选项添加到您的应用程序的“可扩展性配置” (Extensibility Configurations) 属性中:
{ "preferences": { "global": [ { "name": "PW_APPID", "value": "XXXXX-XXXXX" }, { "name": "PW_API_TOKEN", "value": "your Device API token" } ] }}设置好后,SDK 会在任何 JavaScript 运行之前进行配置,因此在应用未运行时发送的推送可以被正确处理,推送统计数据也不会丢失。首选项名称区分大小写——请完全按照所示编写。PW_API_TOKEN 是可选的;该令牌也可以在运行时通过 SetApiToken 客户端操作进行设置。
通过 PushwooshNotifications 块传递 Application Code 的方式仍然有效;当两者都设置时,运行时的值会生效。
注册设备
Anchor link to为了让您的设备能够接收推送通知,您需要注册它。如果您的用户需要登录才能使用应用程序,请转到“登录” (Login) 屏幕并编辑“登录” (Login) 操作。

在 “DoLogin” 操作之后添加注册设备的代码。它应该看起来像这样:

如果您的应用程序没有登录功能,您可以将此代码添加到 PushwooshNotifications 块的 OnInitializeOver 事件中。

在此事件处理程序中,调用 RegisterDevice 操作。

如果您使用开发者证书生成 iOS 移动应用,您将需要向您的 OutSystems 模块的“可扩展性配置” (Extensibility Configurations) 属性添加一个首选项:
{ "preferences": { "global": [ { "name": "aps-environment", "value": "development" } ] }}
此首选项将被添加到您的 entitlements 文件中(在 Apple 开发者文档中了解有关 entitlements 的更多信息)。
如果您使用生产证书生成 iOS 移动应用,则无需指定任何首选项,因为 OutSystems 中 aps-environment 首选项的默认值为 production。
您的应用程序现在已准备好接收推送通知。请配置并生成您的移动应用,并将其安装到您的设备上。此时,您可以使用 Pushwoosh 界面向您的应用发送通知,以确保一切都已正确配置。请注意,如果应用正在运行,您将不会看到通知。相反,NotificationReceivedEvent 事件会立即被触发。
发送通知
Anchor link to要发送通知,您需要一个 Pushwoosh API 访问令牌。通过访问 Pushwoosh 控制台,转到“API 访问” (API Access),然后点击“生成新的访问令牌” (Generate new access token) 来创建一个。

要向所有设备发送通知,请使用 SendPushNotificationToAll 操作。

此操作接受以下参数:
- PushwooshApplicationCode: 您在 Pushwoosh 中创建应用程序后获得的 Pushwoosh Code。
- ApiAccessToken: 先前获得的 Pushwoosh API 访问令牌。
- Message: 您希望发送的消息文本。
- Badge: 显示在 iOS 应用程序图标上的数字。
- Deeplink: 与通知一起发送的深层链接。了解如何定义深层链接。
- InboxDays (可选,自 4.7.0 版起):消息在用户 Inbox 中保留的天数,最多 30 天。如果没有此参数(也没有 InboxDate),推送将不会保存到 Inbox。
- InboxDate (可选,自 4.7.0 版起):消息在用户 Inbox 中保留的截止日期。这是 InboxDays 的替代方案。
- InboxImage (可选,自 4.7.0 版起):在 Inbox 中消息旁边显示的自定义图片的 URL。
两个同级的服务器操作接受相同的参数:SendPushNotificationToToken 发送到由其推送令牌标识的单个设备,而 SendPushNotificationToUserId 发送到在给定 User ID 下注册的所有设备(通过 SetUserId 客户端操作设置)。
例如,如果您使用此操作向名为 “PushTest” 的应用程序发送消息 “Hello from OutSystems”,iOS 上将显示以下内容:

附加信息
Anchor link to- 如果您的应用正在运行,通知不会在设备上显示。相反,它会被发送到应用,并触发
NotificationReceivedEvent事件。您需要定义在这种情况下希望应用执行的操作。 - 推送通知可能需要一些时间才能激活。如果您没有看到通知送达,请等待几分钟再进行进一步的故障排除。
与我们分享您的反馈
Anchor link to您的反馈有助于我们创造更好的体验,因此,如果您在 SDK 集成过程中遇到任何问题,我们非常希望听到您的声音。如果您遇到任何困难,请随时通过此表单与我们分享您的想法。