0

这是我的场景。作为我的应用程序的一部分,当有人收到消息时,它会向手机发送警报。如果他们单击警报,我想打开他们收到警报的特定消息。我有一个将显示特定消息的视图消息控制器。以下是我的问题:

  1. 在应用程序打开时处理通知的最佳方式是什么?我在 appDelegate 中收到警报,我是否应该显示从那里触发的警报框并在他们选择查看时打开正确的控制器?这似乎是不属于 appDelegate 的代码,但我不知道否则会如何发生。

  2. 对于登录,这是一个非常相似的问题。当他们登录时,它会将他们记录到服务器中,并且他们会保持登录状态一段时间。当应用程序加载时,我想在服务器上启动检查以查看他们的登录是否超时。如果有,我想将它们推送到应用程序的登录屏幕。这也会发生在应用程序委托中吗?

  3. 我的第三个问题是如何最好地处理获取电话 ID。我在我的应用程序委托中设置了方法,当他们接受推送通知时我会在其中获取 ID。我的计划是检查他们是否已登录,如果他们正在检查我是否已经将他们的 ID 保存到服务器。如果没有发送它保存。这是最好的方法吗?

4

1 回答 1

0
  1. 是的,你会想要显示一个通知(UIAlertView 非常适合这个),所以应用程序不会突然改变视图,或者在收到通知时跳来跳去。你会希望用户能够控制他们是否想要查看与通知相关的内容,就像他们可以选择忽略来自应用程序的通知一样。

  2. 是的,或者将视图切换到处理登录的任何视图控制器(您可以以模态方式执行此操作)。请务必让用户知道他们看到登录视图的原因:“需要登录才能查看 [通知]”或类似的内容。但这取决于应用程序的其余流程。*

  3. 不完全确定您指的是哪个 ID?您可能希望在与服务器通信的应用程序中存储一个唯一令牌。此令牌是在第一次登录时生成的,例如,它使您能够将用户的登录名与令牌相匹配。AUUID可能有效,或者您可以自己滚动。

*关于自动注销的说明,为什么会有这个?大多数应用程序始终保持登录状态,让用户控制他们何时想要注销(Facebook、Twitter、Instagram 等 - 除非它是银行应用程序或 PayPal)。或者,您可以让用户添加自定义的四位数登录代码,例如 Dropbox 应用。

于 2012-05-07T21:34:42.237 回答