2013-10-04 10 views
6

Przeczytałem posty tutaj sugerujące, że jedynym sposobem, aby powiadomienia PUSH pojawiły się jako alert zamiast banera, jest dla indywidualnego użytkownika końcowego zmiana Alert Style w sekcji Notifications aplikacji Settings aplikacji. Co mnie zastanawia, to że istnieją aplikacje, które domyślnie są w stylu Alerts, bez konieczności tego.Opcje typu powiadomień iOS PUSH? Alert kontra baner?

Czy istnieje sposób, aby programowo ustawić styl Alerts w oknie dialogowym po pierwszym uruchomieniu? Nie mam nic przeciwko prośbie użytkownika o potwierdzenie w oknie dialogowym. Po prostu wiem, że inne aplikacje nie wymagają od użytkownika ręcznego przejść do ustawień, aby zmienić styl powiadomienie, musi istnieć inny sposób to zrobić ...

Mam następujący -

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
    [[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound)]; 
    return YES; 
} 
+0

Czy możesz podać przykład takich aplikacji, abyśmy mogli to sprawdzić? – Andrew

+0

CSR Racing na pewno ... – user1145643

+0

http://img534.imageshack.us/img534/1803/ra0k.png To są domyślne ustawienia powiadomień, które dostałem, gdy je zainstalowałem. W każdym razie - nie sądzę, że można je ustawić. – Andrew

Odpowiedz

7

Twoja aplikacja ma tylko uprawnienia do sprawdzania ustawień powiadomień, nigdy nie możesz ustawić ani zmienić typów powiadomień dla użytkownika.

Podczas kwerendy typy powiadomień opcje są następujące

typedef NS_OPTIONS(NSUInteger, UIRemoteNotificationType) { 
    UIRemoteNotificationTypeNone = 0, 
    UIRemoteNotificationTypeBadge = 1 << 0, 
    UIRemoteNotificationTypeSound = 1 << 1, 
    UIRemoteNotificationTypeAlert = 1 << 2, 
    UIRemoteNotificationTypeNewsstandContentAvailability = 1 << 3, 
} 

wszystko, co można dowiedzieć się od zapytań ustawienia Push to pogoda czy użytkownik włączył alarmy ale nie jak są one wyświetlane (Banner vs alert).

2

Nie jest to niemożliwe, nie można tego zrobić.

Możesz użyć tej linii do kwerendy bieżące ustawienia stylu zgłoszenia:

UIRemoteNotificationType* enabledTypes = [[UIApplication sharedApplication] enabledRemoteNotificationTypes]; 

Można sprawdzić enabledTypes a następnie instruuje użytkownika, aby zmienić styl powiadomienia w ustawieniach.

+0

Nie można faktycznie sprawdzić stylu alertu. Tylko jeśli pozwalają na powiadomienia o dowolnym stylu. Nie można więc poprosić użytkownika o zmianę stylu alertu na podstawie włączonych typów. –

Powiązane problemy