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.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With