App Pusher 是一个非常知名且强大的 推送通知测试工具,它的核心功能是让你能够无需编写任何代码,就可以向你的 iOS 和 Android 设备发送测试推送通知。

app pusher 网站
(图片来源网络,侵删)

App Pusher 是什么?

App Pusher 是一个“推送通知模拟器”,对于开发者、测试人员和产品经理来说,它在以下场景中非常有用:

  • 开发阶段:在编写后端推送服务之前,快速验证 App 是否能正确接收和处理推送。
  • 测试阶段:手动触发各种类型的推送(如纯文本、带图片、带自定义数据),测试 App 的 UI 反应、后台处理逻辑和用户交互流程。
  • 调试阶段:当推送通知出现问题时(比如收不到、显示异常),用它来快速排查问题是在 App 端、后端端还是 APNs/FCM 端。
  • 演示阶段:向客户或同事展示 App 的推送功能,无需复杂的后端支持。

核心功能与特点

  1. 跨平台支持

    • iOS:支持通过 Apple Push Notification service (APNs) 发送推送。
    • Android:支持通过 Firebase Cloud Messaging (FCM) 发送推送。
  2. 简单易用

    • 无需代码:你只需要在 App Pusher 网站上输入推送内容,然后点击发送。
    • 直观的界面:界面清晰,分为 iOS 和 Android 两个区域,操作简单。
  3. 丰富的推送选项

    app pusher 网站
    (图片来源网络,侵删)
    • 推送通知的标题。
    • 推送通知的正文。
    • 声音:可以为 iOS 和 Android 分别设置通知提示音。
    • Badge (徽章):仅适用于 iOS,可以设置 App 图角上的数字。
    • 自定义数据:可以发送 JSON 格式的自定义数据载荷,App 端可以解析这些数据并执行特定操作(打开特定页面、执行某个方法等),这是其最强大的功能之一。
  4. 设备注册简单

    你需要在你的 App 中集成一个简单的 SDK(通常是一个小的配置文件或几行代码),用于将你的设备 Token 注册到 App Pusher 的服务器上,一旦注册成功,你就可以在 App Pusher 的 Web 界面上选择该设备进行推送。

  5. 免费与付费版本

    • 免费版:通常包含基础的推送功能,但可能有设备数量或推送次数的限制。
    • 付费版:提供更多高级功能,如无限制的设备、推送历史记录、团队协作、更高级的定制选项等。

如何使用 App Pusher?(基本流程)

使用 App Pusher 通常分为两步:在 App 中集成,然后在网站上发送推送。

app pusher 网站
(图片来源网络,侵删)

步骤 1:在你的 App 中进行集成(以 iOS 为例)

  1. 注册账号:在 App Pusher 官网注册一个账号。

  2. 创建应用:在后台创建一个新的 iOS 应用,它会为你生成一个 App ID 和一个 API Key。

  3. 集成 SDK:将 App Pusher 提供的 SDK(通常是一个静态库或 CocoaPods/SPM 依赖)添加到你的 Xcode 项目中。

  4. 注册设备:在你的 App 启动时,调用 SDK 的方法来请求推送权限,并将获取到的 Device Token 发送给 App Pusher 的服务器,代码通常看起来像这样:

    import AppPusherSDK // 假设的 SDK
    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        // 1. 请求推送权限
        UNUserNotificationCenter.current().requestAuthorization(options: [.alert, .sound, .badge]) { granted, error in
            if granted {
                print("Permission granted")
                DispatchQueue.main.async {
                    application.registerForRemoteNotifications()
                }
            }
        }
        return true
    }
    // 2. 将 Device Token 发送给 App Pusher
    func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {
        let tokenString = deviceToken.map { String(format: "%02.2hhx", $0) }.joined()
        AppPusher.shared.registerDeviceToken(tokenString) // 调用 SDK 方法
        print("Device Token: \(tokenString)")
    }
    func application(_ application: UIApplication, didFailToRegisterForRemoteNotificationsWithError error: Error) {
        print("Failed to register: \(error.localizedDescription)")
    }

步骤 2:在 App Pusher 网站上发送推送

  1. 登录并选择设备:登录后,选择你刚刚注册的设备和应用。
  2. 填写推送内容
    • "你好,世界!"
    • "这是一条来自 App Pusher 的测试推送。"
    • 自定义数据: {"url": "https://www.example.com", "action": "open_profile"}
  3. 发送:点击 "Send" 按钮。
  4. 接收通知:几秒钟后,你的手机上就会收到这条推送通知。

App Pusher 的优缺点

优点:

  • 效率极高:极大地简化了推送测试流程,节省了大量开发时间。
  • 调试利器:能快速定位问题,是排查推送问题的首选工具。
  • 降低门槛:即使是不懂后端开发的测试人员或产品经理,也能轻松使用。
  • 功能全面:支持 APNs 和 FCM,以及自定义数据等高级特性。

缺点:

  • 非生产环境:它是一个测试工具,不适合用于生产环境的真实用户推送。
  • 依赖外部服务:需要将设备 Token 注册到第三方服务器,存在一定的数据安全考量(但对于测试来说通常可以接受)。
  • 有成本:对于需要大量设备或高级功能的团队,付费版本是一笔开销。

App Pusher 是任何涉及移动推送通知的开发者和团队的必备工具。 它就像一个“瑞士军刀”,专门用来解决推送通知在开发和测试阶段的各类问题,如果你正在开发或维护一个 App,强烈建议你试用一下,它会显著提升你的工作效率。


官方网站链接

你可以通过以下链接访问 App Pusher 的官方网站:

在网站上你可以找到更详细的文档、定价信息和最新的功能更新。