3

タイトルの通り、AWS SNS プッシュ通知を iOS デバイスで動作させようとしています。テスト目的で、モバイル ハブ ( https://console.aws.amazon.com/mobilehub ) を試して、指定されたサンプル アプリの上で作業を進めたいと思いました。

私はそれを機能させることができないようです。多層的な指示が含まれている場合、助けを求めるのが難しいことはわかっていますが、週末中ずっとこの問題と格闘してきましたが、理解できなかったようです. AppDelegate では、トピックを選択した後に Amazon SNS モバイル コンソール内で SNS をトリガーすると、didReceiveRemoteNotification 呼び出しが何かを受け取るはずです。しかし、このプロトコルは呼び出されていません。

  1. プロビジョニング プロファイルに関しては、開発と配布の両方を作成しました。両方でテスト済み。
  2. 証明書に関しては、Apple Push Notification service SSL (Sandbox) と Apple Push Notification service SSL (Sandbox & Production) の両方で試しました。前者では、アプリをインストールしても通知許可アラートが表示されないため、後者を選択する必要があることは明らかです. 後者でインストールした場合にのみ表示されます。

  3. バンドル ID が一致することを確認しました。

  4. iPhone 6s ですべての通知をオンにしました。

  5. コンソールに次の成功メッセージが表示されます。

2016-03-30 20:57:57.103 MySampleApp[284:47861] AWSiOSSDKv2 [情報] AWSPushManager.m 行:186 | -[AWSPushManagerinterceptApplication:didRegisterForRemoteNotificationsWithDeviceToken:] | デバイス トークン: 435d5se354s38s9ddge2edcs2a3601e18ss9c83e47s629164ebced21s16abb39974sg3

  1. 「didFailToRegisterForRemoteNotificationsWithError」が呼び出されることはありません。

  2. 「didRegisterForRemoteNotificationsWithDeviceToken」が正常に呼び出されます。

  3. コンソールにも次の成功メッセージが表示されます。

2016-03-30 21:34:16.635 MySampleApp[321:57551] AWSiOSSDKv2 [情報] PushNotificationViewController.m 行:112 | -[PushNotificationViewController topicDidSubscribe:] | トピックへのサブスクライブに成功しました: AWSPushTopic: 0x14c6da770

私は完全に迷っています。この問題を解決するために投稿する情報が他にある場合はお知らせください。

更新: Rohan Dubal さん、コメントありがとうございます。以下、お願いした内容です。

  1. はい、私はいつも "My Sample App" ナビゲーションバー ビュー -> "Push Notifications" 行 -> "Push Notifications" ナビゲーション バー ビュー -> 下部の [Demo Push Notifications] をクリックします -> トグルはオン (緑色) で、 「トピック」行にチェックマークが付けられており、APNS をその参照トピックに送信しました。

  2. はい、アプリを最小化して閉じてみました。トップバーの通知または通知がまったく表示されません。

ご意見をいただきありがとうございます。私が実行できる他のテストを提案してください。

また、おそらく私のiPhone 6sと関係があるのではないかと思ったので、iPhone 5sで試してみましたが、まだ機能しません。iphone 6s は ios9.2、iphone 5s は ios 8.3 です。

4

1 に答える 1

3

さて、これは私が今抱えていた問題に似ています。Mobile Hub では、開発 APNS ではなく、運用 APNS のみをセットアップできるようです。XCODE でアプリをデバッグするときは、サンドボックス APNS を使用する必要があるため、次のようにしました。

  1. Apple Development (APNS_SANDBOX) タイプの SNS アプリケーションを作成します。
  2. アプリ ID で開発証明書の .p12 を使用する
  3. アプリを起動し、didRegisterForRemoteNotificationsWithDeviceToken がくれたデバイス トークンを記録しました
  4. アプリを最小化しました(それ以外の場合、通知は表示されません)
  5. SNS コンソールで、デバイス トークンを使用してエンドポイントを登録しました
  6. SNS コンソールの [このエンドポイントに公開] ボタンを使用してメッセージを送信しました (明らかに「Hello World」)。
  7. 通知を見た
  8. エンジニアの勝利のダンスはありましたか

うまくいけば、それはあなたを助けます。私にとって重要だったのは、別の SNS キューを作成する必要があることに気付いたことです。TBH モバイル ハブのメリットがわかりません。

于 2016-09-12T21:01:50.927 に答える