【问题标题】:How to communicate between Notification Extension and app for below use case?如何在以下用例的通知扩展和应用程序之间进行通信?
【发布时间】:2019-12-02 19:13:57
【问题描述】:

我有一个特定的用例:

客户端应用程序具有电影数据以及在应用程序中播放电影的功能。

现在我想向用户发送通知,在通知负载中我只想提及电影 ID 和电影海报 url。 通过通知服务扩展,我可以下载电影海报 url,然后在 iPhone 屏幕上出现通知时显示它。 加号通知也有自定义按钮(播放电影)。

现在,我想添加一些功能,例如,每当用户点击“播放电影”按钮时,通知扩展程序应该与我的应用交互并且我的应用应该开始播放电影。

如何在应用扩展程序和应用程序之间进行通信,以便在扩展程序上点击自定义操作,在应用程序上播放电影?

我能想到的一种可能方式是在两个目标上共享处理程序类。然后打电话给他们。

还有其他更好的方法吗?

【问题讨论】:

  • 你是想从扩展中的点击按钮转到应用程序还是在通知中播放视频
  • 在应用内播放视频。
  • 你有通知服务和内容吗?
  • 是的,我都有。

标签: ios swift push-notification


【解决方案1】:

与我的想法相比,这非常容易。

所以只是在这里发布一个答案,它可以帮助其他人。

您可以处理来自共享 UNUserNotificationCenter 对象的委托对象的选定操作。

当用户选择一个动作时,系统会在后台启动你的应用程序并调用代理的 userNotificationCenter(_:didReceive:withCompletionHandler:) 方法。

将响应对象的 actionIdentifier 属性中的值与您的应用的一项操作相匹配。

【讨论】:

    猜你喜欢
    • 2013-04-07
    • 2014-06-08
    • 1970-01-01
    • 2012-07-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多