【发布时间】:2019-07-19 10:16:19
【问题描述】:
我有一个内容丰富的推送通知。
我能不能让它不能被点击,即,单击一次不会打开应用程序。必须下拉到丰富内容或3D触摸,或通过滑动从通知中心删除。
我应该如何指示用户向下拖动(3D 触摸)以便在通知中显示丰富的内容?
【问题讨论】:
-
要实现这种行为,您可以使用静默通知,然后显示丰富的内容。用户不会看到静默通知。
标签: ios swift push-notification
我有一个内容丰富的推送通知。
我能不能让它不能被点击,即,单击一次不会打开应用程序。必须下拉到丰富内容或3D触摸,或通过滑动从通知中心删除。
我应该如何指示用户向下拖动(3D 触摸)以便在通知中显示丰富的内容?
【问题讨论】:
标签: ios swift push-notification
不,点击推送通知将始终在应用程序中打开通知,据我所知,公共 API 无法覆盖此行为。似乎有一个私有 API 可以获取您正在寻找的行为,因为一些 iOS 生成的(本地,而不是推送)通知似乎完全符合您的要求。如果你能设法发现这一点,如果 Apple 发现,使用风险自负。
现在,至于可能的解决方案:我会考虑在您的应用的委托上实现代码,以便在打开通知时做出适当的响应。例如,当应用程序从通知启动时,将用户发送到应用程序中的适当位置……也许是一个显示与丰富通知内容相同的内容的视图控制器。我不知道确切的用例,但措辞对我来说意味着如果应用程序启动到它的主界面,它可能会让用户感到困惑。
我无法告诉您您希望如何响应通知,因此有关在从推送通知启动应用程序时适当响应的更多信息,请参阅 Apple 的以下文档:
UIApplicationDelegate.application(_:willFinishLaunchingWithOptions:)UIApplicationDelegate.application(_:didFinishLaunchingWithOptions:)UIApplication.LaunchOptionsKeyUIApplication.LaunchOptionsKey.remoteNotification希望您能从中找到合适的解决方案。但如果这不是一个选项,请考虑在某个时候直接告诉用户用力按下(或点击并按住,因为许多设备不支持 3D Touch)以查看内容。您可以在某些入职过程中执行此操作,或者作为最后的手段,在通知本身中执行此操作。
不过,在继续往下走之前,请了解并非所有用户都知道 3D Touch 和/或这种内容丰富的功能甚至存在 - 经常使用它的人更少 - 如果他们感到困惑,他们可能会决定清除通知或彻底禁用您的应用程序的通知。一般来说,“教”用户不熟悉的设备使用方式也是一个坏主意。如果用户习惯于点击通知,那么他们很可能会点击您的通知。打破这种肌肉记忆可能很难。
【讨论】: