为 App 打开时收到的推送定制样式
App 处于前台时收到推送,iOS 把这一刻交给您处理。Pushwoosh iOS SDK 以您的品牌配色和字体绘制动画横幅,并在 iOS 26 上使用 Apple 的 Liquid Glass 材质。
超过 80,000 家企业借助 Pushwoosh 扩大用户互动
前台推送全解析
App 在前台时到达的推送,需要 App 自己处理。iOS 要么在您的界面上方显示朴素的系统横幅,要么什么都不显示——您围绕它搭建了整个 Customer Journey 的消息,最终只呈现为灰色的系统样式。PushwooshForegroundPush 模块会把同一个 payload 渲染成一个完全由您掌控的横幅。
Liquid Glass (iOS 26)
开启 useLiquidView,横幅即以 Apple 的 Liquid Glass 材质绘制,看起来是 iOS 26 的一部分,而不是贴在屏幕上的一层。
标准横幅 (iOS 13 到 25)
低于 iOS 26 时,同一调用会以您的渐变和配色渲染实色横幅;较旧的 Swift 工具链则回退为模糊效果视图。一套配置覆盖三种情况。
卡片图片与 GIF
标题、正文、卡片图片和 GIF 动画,全部读取自推送已携带的 payload。
动效、触感与停留时间
入场动画、balls 或 regularPush 关闭动画、到达时从七个级别中选择的触感反馈,以及横幅自动消失前的停留秒数。
您可以控制什么
| 属性 | 设置内容 | 取值 |
|---|---|---|
useLiquidView | iOS 26 上的 Liquid Glass 材质 | Bool,默认 false |
gradientColors、backgroundColor | 横幅绘制的背景 | 您的品牌色 |
titlePushColor、messagePushColor | 两行文字的颜色 | 您的品牌色 |
titlePushFont、messagePushFont | 两行文字的字体 | App 内置的任意字体 |
usePushAnimation | 入场动画 | Bool,默认 true |
duration | 横幅自动消失前的停留时间 | 秒 |
vibration | 到达时的触感反馈 | none、light、medium、heavy、soft、rigid、notification |
disappearedPushAnimation | 横幅离开屏幕的方式 | balls 或 regularPush |
style | 内置布局 | style1,目前唯一可用的样式 |
useLiquidViewfalsegradientColors、backgroundColortitlePushColor、messagePushColortitlePushFont、messagePushFontusePushAnimationtruedurationvibrationnone、light、medium、heavy、soft、rigid、notificationdisappearedPushAnimationballs 或 regularPushstylestyle1,目前唯一可用的样式在哪里设置
启动时一次调用
在 didFinishLaunchingWithOptions 中调用 foregroundNotificationWith(style:duration:vibration:disappearedPushAnimation:),并设置外观属性。整个 App 只需配置一次。
到达时一次调用
在 PWMessagingDelegate.onMessageReceived 回调中调用 showForegroundPush(userInfo:),直接根据消息 payload 渲染横幅。
一个点击代理
PWForegroundPushDelegate.didTapForegroundPush(userInfo:) 会交给您完整的 payload,点击即可深度链接到活动预设的位置。
在用户旅程中发挥作用
一条推送,三种呈现
前台横幅只是您已在发送的消息的一种呈现方式。同一细分、同一触发器、同一 payload、同一个 Customer Journey 中的同一步骤。改变的只是设备收到消息后如何处理。
App 关闭时,消息作为普通系统推送送达,或更新一个 Live Activity。App 打开时,SDK 绘制这个横幅。当这一刻值得用全屏展示优惠或表单时,同一个旅程会升级为 应用内消息。
读者正在看文章时,突发新闻来了
编辑事件触发旅程。一条静默推送在后台预热文章,读者完全察觉不到,提醒紧随其后一秒到达。
App 关闭的读者在锁屏上看到系统推送。已在 App 内的读者则会看到媒体自己的品牌横幅滑过正在阅读的文章,附带缩略图,一次点击即可深度链接到新文章。无论哪种情况,Message Inbox 都会保留这条提醒。
适用场景
横幅只在用户身处 App 内时触发,因此它的价值取决于会话内密度:您的发送有多少落在已经打开的屏幕上。会话时长长的 App 收益最大,而消息总是到达揣在口袋里的手机的 App 几乎没有收益。对会话时长普遍较长的出海手游和内容类 App 来说,这正是一个值得打磨的触点。
| 场景 | 消息内容 | 为什么适合横幅 |
|---|---|---|
| 出海手游:对局中的活动或奖励 | 轮到你了:团本 5 分钟后开始 | 会话时间长,大多数推送都在游戏中到达,与美术风格一致的横幅契合游戏 UI |
| 媒体与新闻:阅读时突发新闻 | 判决结果出炉 | 读者已在 App 内,系统横幅会打断媒体自身的设计 |
| 流媒体:观看剧集时新内容上线 | 第 3 季已上线 | 提醒可以带上剧集海报,而不是以系统样式出现 |
| 创作者与订阅类 App:新作发布或试用提醒 | 您关注的创作者有新作品 | 精心设计的 App 不应把这一刻交给系统,点击可深度链接到付费墙 |
| 体育直播:用户在 App 内观看时进球 | 1-0,第 68 分钟 | 用户为这场比赛打开 App,推送到达时正在观看 |
| 跨境电商与交易平台:浏览时降价 | 您的尺码已到货 | 滚动浏览中出现的定制横幅更像店铺的一部分,而不是打扰 |
| 金融科技:应用内操作时的确认 | 转账已发送 | 在用户正等待确认的时刻,品牌化确认显得自然原生 |
什么时候更适合其他触点
横幅介于朴素的系统提醒和全屏应用内消息之间,适合一眼看完的信息。很多场景落在它的两侧。
- 消息在 App 关闭时到达:快递到门口、登机口变更、欺诈提醒。这应使用普通推送、中断级别 或 Live Activity。
- 状态是持续的而非瞬时的:进行中的订单、行驶中的车辆、实时比分。这应使用 Live Activity。
- 消息需要全屏:优惠、表单、付费墙。这应使用 应用内消息,它更丰富,并且无需代码即可编辑。
- 您想改变谁收到消息或消息内容。这个模块只改变消息的外观,触达仍由 移动推送 负责。
平台与技术支持
该模块仅适用于 iOS。Android 的前台行为由 通知渠道 控制,Pushwoosh SDK 根据推送 payload 创建渠道,无需 App 在代码中注册;Web 端没有对应的触点。最后一列说明实际绘制横幅的组件,因为这部分大多在您的 App 中,而不在服务端。
| 能力 | iOS | Android | Web | 实现方式 |
|---|---|---|---|---|
| 自定义前台横幅 | iOS 13.0+,Pushwoosh SDK 6.10.0+ | – | – | App 中的 PushwooshForegroundPush 模块 |
| Liquid Glass 材质 | iOS 26,Swift 5.13+ | – | – | Apple 的材质,通过 useLiquidView 开启 |
| 实色横幅回退 | 低于 iOS 26,Swift 5.13+ | – | – | SDK 绘制的标准视图 |
| 模糊横幅回退 | 任意 iOS,Swift 低于 5.13 | – | – | SDK 绘制的模糊效果视图 |
| 标题、正文、卡片图片、GIF | 支持 | – | – | 推送 payload,保持不变 |
| 品牌配色、渐变和字体 | 支持 | – | – | 模块上的静态外观属性 |
| 触感、入场与关闭动画、停留时间 | 支持 | – | – | App 启动时的 foregroundNotificationWith |
| 点击处理与深度链接 | 支持 | – | – | PWForegroundPushDelegate.didTapForegroundPush |
| 无代码配置外观 | – | – | – | 目前不支持,样式在 App 代码中设置 |
| 其他平台的类似会话内触点 | 应用内消息、Live Activities | 应用内消息 | 应用内消息 | 独立产品,在 Control Panel 中无代码编辑 |
PushwooshForegroundPush 模块useLiquidView 开启foregroundNotificationWithPWForegroundPushDelegate.didTapForegroundPush安全与托管
Pushwoosh 运行在位于美国和德国的自有硬件上,遵循 GDPR。
工作原理
这个功能需要开发投入,我们直说。Control Panel 中没有前台外观的编辑器,因此需要开发人员在 App 中一次性接入,之后的一切都是您已经在做的发送工作。
-
添加模块,把前台交给 App (开发人员)
将
PushwooshForegroundPush与PushwooshFramework、PushwooshCore、PushwooshBridge和PushwooshLiveActivities一起添加,然后在Info.plist中将Pushwoosh_SHOW_ALERT设为false。这会阻止 iOS 绘制自己的提醒,因为横幅是替代它,而不是与它并存。 -
一次性配置外观 (开发人员)
在
didFinishLaunchingWithOptions中调用foregroundNotificationWith(style:duration:vibration:disappearedPushAnimation:),并设置颜色、渐变和字体等外观属性。在onMessageReceived中用showForegroundPush(userInfo:)渲染每条消息,并在didTapForegroundPush中处理点击。 -
照常发送 (无代码)
相同的受众、相同的 Customer Journey、相同的 payload,无论活动来自 Control Panel 还是 Messages API。横幅只是这条推送在 App 打开时的呈现方式。
需要了解的限制
探索相关产品
Pushwoosh 移动推送通知帮助出海企业通过 FCM、APNs、华为 HMS 和 Amazon ADM 触达全球每一台设备,配合精准定向、全渠道 Journey 编排和 99% 高可用交付,把推送变成忠实付费用户。
Pushwoosh 应用内消息:在海外用户活跃的那一刻完成引导、追加销售、公告推送与反馈收集。无代码编辑器、原生 SDK 渲染模板、逐元素数据分析,符合 GDPR,欧盟数据中心托管,免费开始使用。
为现有推送添加带标签的操作按钮,海外用户一键确认、领取、批准或追踪。在 Pushwoosh Control Panel 中无代码创建 iOS 按钮组,并从同一活动和旅程发送。
Android 16 Live Updates:订单、行程或配送在锁屏上只占一张卡片并原地刷新。Pushwoosh 从服务端开启、更新和结束,与其他推送共用同一活动和旅程。
在一条 iOS 推送中放入多张图片,海外用户在展开的通知中左右滑动浏览。Pushwoosh 提供通知内容扩展,轮播推送与其他推送共用同一活动和旅程。
Message Inbox 为 App 和网站加入应用内消息中心。静默送达覆盖所有海外用户,包括关闭推送的用户,保存的消息可随时回看。