iOS8設置應用圖標紅點的權限問題


在ios8中,直接設置application badge value會出錯

 1 [[UIApplication sharedApplication] setApplicationIconBadgeNumber:count]; 

曝出”Attempting to badge the application icon but haven't received permission from the user to badge the application“的錯誤。

  原因是因為在ios8中,設置應用的application badge value需要得到用戶的許可。使用如下方法咨詢用戶是否許可應用設置application badge value

UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeBadge categories:nil];
[[UIApplication sharedApplication] registerUserNotificationSettings:settings];

程序運行時,會彈出提示框給用戶

 

 

iOS8中新增了通知授權后的回調:
– (void)application:(UIApplication *)application didRegisterUserNotificationSettings:(UIUserNotificationSettings *)notificationSettings
問題解決
把所有
– (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions中的-[UIApplication setApplicationIconBadgeNumber:]
移到
– (void)application:(UIApplication *)application didRegisterUserNotificationSettings:(UIUserNotificationSettings *)notificationSettings
回調中


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM