我使用Firebase开发了一个Android应用程序,其功能类似于多因素身份验证,用户登录并收到一个对话框,要求在智能手机上进行确认。
我正在使用Firebase在iPhone上开发类似的应用程序。 我可以通过iPhone接收到通知(从Firebase控制台发送),但是对此我有些疑问。
在我的android应用中,我实现了它,以便在收到通知时不显示默认通知,而是显示带有“是/否”按钮的视图。
在iOS中,我见过的所有教程用户都需要先“单击”顶部栏上的通知,以便您可以进行交互,然后打开“视图...”。
所以我的问题(我是iOS开发的新手)基本上是:
是否可以不显示通知(在顶部栏上)并直接打开视图?
当用户注册时,他需要读取QRCode,然后将通知发送到服务器,然后服务器发送带有成功/失败的通知答案,如果服务器回答了,我可以选择显示“无”(无默认通知)?我的意思不是静默通知,因为它们没有被优先考虑。
带有自定义json的服务器答案,但我在iOS的某个地方读取了通知,应该采用特殊格式?
这些基本上是我的问题,我知道它们有点基本,但是我发现的大多数教程都来自较旧的iOS版本,所以我很困惑。
答案 0 :(得分:1)
我假设您正在谈论的是来自Apple Push Notification Service(APNS)的通知。 要按顺序回答您的问题:
- 是否可以不显示通知(在顶部栏上)并直接打开视图?
您不能更改系统范围内推送通知的默认样式。用户甚至可以随时禁用您的应用程序的通知。但是,您可以发送Actionable Notification并以这种方式执行是/否决定,而无需打开应用程序本身。这可能与您想要的结果最相似。
如果您不想在登录请求后连续询问服务器,则
- 我可以在不显示视图的情况下发送通知吗?
Silent Notifications最有可能是您的最佳选择。有关APNS可靠性的更多信息,请阅读here。
您还应该想到的是:如果在收到通知的同时打开您的应用程序,则无论此通知是否为静默状态,都不会显示系统范围的通知视图。
- 通知是否有特定格式?
通知必须以documented here的格式发送。 如果您无法在推送通知本身中发送所有相关的json,则可以发送一个url或标志,指示您的应用程序可以从服务器下载新内容,而无需发送所有相关json。这可以在通知处理程序中完美地完成。