4

アプリの新規インストール時に表示されるプッシュ通知ポップアップがあります。[OK] と [許可しない] の 2 つの選択肢があります (私の記憶が正しければ)。

「許可しない」をクリックした場合のコールバック方法を教えてください。問題は、「許可しない」をクリックするとAppDelegateのそのメソッドに直接行くと思ったので、didFailToRegisterForRemoteNotificationsを実装しました。ただし、メソッドは呼び出されませんでした。

私の問題は、ユーザーが「許可しない」をクリックしたときのイベントを知る必要があることです。これを行う方法はありますか?助けていただければ幸いです。ありがとう。

4

2 に答える 2

-3

ただし、ここからのデリゲート コールバックはありません:ユーザーがプッシュ通知プロンプトを拒否した場合のコールバック メソッド?

BOOL 変数を使用して、AppDelegate でチェックすることができます。

AppDelegate.m

// declare a BOOL 
BOOL allow = NO;

- (void)application:(UIApplication*)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData*)deviceToken
{
  allow = YES;
  [self doWhatever];
}

- (void)application:(UIApplication*)application didFailToRegisterForRemoteNotificationsWithError:(NSError*)error
{
  allow = YES;
  [self doWhatever];
}
于 2013-10-31T10:59:11.480 に答える
-3
didFailToRegisterForRemoteNotifications 

Apple登録サービスとの通信に失敗した場合、許可しないをクリックしたユーザーを知る方法はありませんが、UIApplicationを確認することで、PushNotificationの登録状況を知る方法があります

NSUInteger rntypes = [[UIApplication sharedApplication] enabledRemoteNotificationTypes]; 
if (rntypes == UIRemoteNotificationTypeNote) {
    // application is not registered for any type of push notification
}
于 2013-10-31T11:03:17.983 に答える