36

古い方法

[[UIApplication sharedApplication] setApplicationIconBadgeNumber:count];

エラーが発生するようになりましAttempting to badge the application icon but haven't received permission from the user to badge the applicationた。

次に、新しいAPIを使用しようとしました(バッジの値に関連していると思います)

CKModifyBadgeOperation * operation = [[CKModifyBadgeOperation alloc] initWithBadgeValue:50];
[operation setModifyBadgeCompletionBlock:^(NSError *error) {
      NSLog(@"%@", error);
}];
[operation start];

しかし、私はエラーを受け取っています<CKError 0x165048a0: "Not Authenticated" (9/1002); "This request requires an authenticated account">

バッジを設定したり、新しい権限を取得したりする方法は?

4

5 に答える 5

36

iOS8 でバッジを変更するには、許可を求める必要があります

    let settings = UIUserNotificationSettings(forTypes: UIUserNotificationType.Badge, categories: nil)
    UIApplication.sharedApplication().registerUserNotificationSettings(settings)

またはobjCで

UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeBadge categories:nil];
[[UIApplication sharedApplication] registerUserNotificationSettings:settings];
于 2014-06-04T09:52:02.467 に答える
0

ObjC を 8.3 に更新: Daij-Djan スクリプトを追加して NSLog(@"access denied for UIUserNotificationTypeBadge"); を置き換える必要があります。上記の Spidy & KepPM ソリューションで。これが役立つことを願っています

于 2015-08-10T14:40:18.493 に答える