开发者

UIRemoteNotificationType invalid conversion

I'm trying to use this fairly standard line of code in my app:

[[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound)];

But am receiving the follow error:

error: invalid conversion from 'int' to 'UIRemoteNotificationType'

It works if I only use one of the notification types but fails every time if I开发者_运维问答 try and use more than one. Any ideas what I'm doing wrong?


You're probably using Objective-C++, which implicit conversion from int to an enum is disallowed.

Try to add an explicit cast:

[… registerForRemoteNotificationTypes:
     (UIRemoteNotificationType)(UIRemoteNotificationTypeAlert | …)];


You have to cast the result as UIRemoteNotificationType:

(UIRemoteNotificationType)(UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound)

This way the method got what it is expecting.


Use this: This will solve ur problem.

[[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationType)(UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeSound)];
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜