我有一个内容丰富的推送通知。
我能否以无法点击的方式进行操作,即,一次点击不会打开该应用程序。必须将其向下拖动到丰富的内容或进行3D触摸,或通过滑动从通知中心删除。
我应该如何指示用户向下拖动(3D触摸)以在通知中显示丰富的内容?
答案 0 :(得分:1)
否,点击推送通知将始终在应用程序中打开通知,据我所知,公共API中没有任何方法可以覆盖此行为。确实有一个私有API可以实现您正在寻找的行为,因为某些iOS生成的(本地而不是推送)通知似乎完全可以满足您的要求。如果您能够设法发现问题,请Apple自行承担风险。
现在,关于可能的解决方案:我将考虑在您的应用的委托中实现代码,以便在打开通知时做出适当的响应。例如,当从通知启动应用程序时,将用户发送到应用程序中的适当位置……也许是视图控制器显示的内容与丰富的通知内容相同。我不知道确切的用例,但措辞对我而言意味着,如果该应用启动到其主界面,可能会使用户感到困惑。
对于我来说,不可能告诉您您希望如何准确地响应通知,因此,有关在推送通知启动应用程序时如何正确响应的更多信息,请参阅Apple的以下文档:
UIApplicationDelegate.application(_:willFinishLaunchingWithOptions:)
UIApplicationDelegate.application(_:didFinishLaunchingWithOptions:)
UIApplication.LaunchOptionsKey
UIApplication.LaunchOptionsKey.remoteNotification
希望您能找到合适的解决方案。但是,如果不是这种选择,请考虑直接告诉用户在某个时候用力按下(或按住,因为许多设备不支持3D Touch)以查看内容。您可以在入职过程中完成此操作,或者绝对可以在通知本身中完成此操作。
但是,在继续这条路线之前,请了解并非所有用户都知道3D Touch和/或这种丰富内容功能,甚至不存在-甚至很少定期使用它-如果他们感到困惑,他们可能会决定清除通知或彻底禁用您应用的通知。通常,“教”用户不熟悉的设备使用方式也是一个坏主意。如果用户习惯于点击通知,那么他们很可能会点击您的通知。破坏肌肉记忆可能很难。