0

これが私のシナリオです。私のアプリの一部として、誰かにメッセージが送信されると、電話にアラートが送信されます。彼らがアラートをクリックした場合、私は彼らがアラートを受けた特定のメッセージを開きたいと思います。特定のメッセージを表示するViewMessageControllerがあります。これが私の質問です:

  1. アプリが開いている間に通知を処理するための最良の方法は何ですか?appDelegateでアラートを受け取ります。そこからトリガーされるアラートボックスを表示し、表示することを選択した場合は正しいコントローラーを開く必要がありますか?これはappDelegateに属していないコードのようですが、そうでない場合はどうなるかわかりません。

  2. ログインの場合、これは非常によく似た質問です。ログインすると、サーバーにログインし、一定期間ログインしたままになります。アプリが読み込まれたら、サーバーのチェックを開始して、ログインがタイムアウトしたかどうかを確認したいと思います。持っている場合は、アプリのログイン画面にプッシュしたいと思います。これはアプリデリゲートでも発生しますか?

  3. 私の3番目の質問は、電話IDの取得を最適に処理する方法です。アプリデリゲートでメソッドを設定し、プッシュ通知を受け入れるときにIDを取得します。私の計画は、彼らがログインしているかどうかを確認し、彼らのIDがすでにサーバーに保存されているかどうかを確認することです。そうでない場合は、保存するために送信します。これを行うための最良の方法ですか?

4

1 に答える 1

0
  1. はい、通知を表示したいので(UIAlertViewはこれに最適です)、アプリが突然ビューを変更したり、通知が届いたときにジャンプしたりすることはありません。ユーザーが必要かどうかを制御できるようにする必要がありますとにかくアプリからの通知を無視することを選択できるのと同じように、通知に関連するコンテンツを表示します。

  2. はい、またはビューをログインを処理したビューコントローラに切り替えます(これはモーダルで行うことができます)。ログインビューが表示される理由をユーザーに必ず知らせてください:「[通知]を表示するにはログインが必要です」など。ただし、アプリの残りのフローによって異なります。*

  3. 参照しているIDが完全にわからない場合は、サーバーと通信するアプリに一意のトークンを保存することをお勧めします。このトークンは、最初のログイン時に生成されます。たとえば、ユーザーのログインとトークンを一致させることができます。うまくいくかもしれません、UUIDまたはあなたはあなた自身を転がすことができます。

*自動ログアウトに関するメモ、なぜこれがあるのですか?ほとんどのアプリは常にログインしたままで、ログアウトするタイミングをユーザーが制御できます(Facebook、Twitter、Instagramなど-銀行のアプリやPayPalでない限り)。または、たとえばDropboxアプリのようなカスタムの4桁のログインコードをユーザーに追加させることもできます。

于 2012-05-07T21:34:42.237 に答える