[iOS8] Notifications Interactives

Hello,


Je teste en ce moment les notifications interactives qui sont apparues avec iOS 8 et impossible d'afficher les boutons.


 


J'ai bien regarder la conf.713 (What's new in iOS notifications), j'ai même reproduis le payload de la page 80 mais rien n'y fait. 


 


Je vous fournis ci-dessous des extraits de mon code.


Le push:



po userInfo
{
"_" = "-5sIQEoJEeSXq5DiugJkgA";
aps = {
alert = "La soir\U00e9e \"Coucou\" est en ligne. Reservez vite ! est en ligne. Reservez vite !est en ligne. Reservez vite !est en ligne. Reservez vite !est en ligne. Reservez vite !est en ligne. Reservez vite !est en ligne. Reservez vite !est en ligne. Reservez vite !est en ligne. Reservez vite !est en ligne. Reservez vite !est en ligne. Reservez vite !est en ligne. Reservez vite !est en ligne. Reservez vite !est en ligne. Reservez vite !est en ligne. Reservez vite !";
badge = 3;
category = "INVITE_CATEGORY";
};
}

//La je testais la taille du payload ^^

Dans mon appDelegate:



//INTERACIVE

UIMutableUserNotificationAction *acceptAction =
[[UIMutableUserNotificationAction alloc] init];

acceptAction.identifier = @ACCEPT_IDENTIFIER;
acceptAction.title = @Accept;
acceptAction.activationMode = UIUserNotificationActivationModeBackground;
acceptAction.destructive = NO;
acceptAction.authenticationRequired = NO;

UIMutableUserNotificationAction *maybeAction =
[[UIMutableUserNotificationAction alloc] init];

maybeAction.identifier = @MAYBE_IDENTIFIER;
maybeAction.title = @Maybe;
maybeAction.activationMode = UIUserNotificationActivationModeBackground;
maybeAction.destructive = NO;
maybeAction.authenticationRequired = NO;


UIMutableUserNotificationAction *declineAction =
[[UIMutableUserNotificationAction alloc] init];

declineAction.identifier = @DECLINE_IDENTIFIER;
declineAction.title = @Decline;
declineAction.activationMode = UIUserNotificationActivationModeBackground;
declineAction.destructive = YES;
declineAction.authenticationRequired = NO;


UIMutableUserNotificationCategory *inviteCategory =
[[UIMutableUserNotificationCategory alloc] init];

inviteCategory.identifier = @INVITE_CATEGORY;

[inviteCategory setActions:@[;acceptAction, maybeAction, declineAction]
forContext:UIUserNotificationActionContextDefault];

[inviteCategory setActions:@[;acceptAction, declineAction]
forContext:UIUserNotificationActionContextMinimal];


NSSet *categories = [NSSet setWithObjects:inviteCategory, nil];

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

Et j'ai implémenté toutes les méthodes de delegates relatives aux notifications.

Voyez vous quelque chose que j'aurais oublié?


 


Merci d'avance ;)


Mots clés:

Réponses

  • AliGatorAliGator Membre, Modérateur
    Pour moi ton code est bon.
    Quand tu dis "impossible d'afficher les boutons", tu as fait la gesture pour les afficher au moins ? (commune à  toutes les applis).

    Par exemple quand tu as une notification alors que tu es en train d'utiliser ton iPhone, la notification s'affiche via un petit bandeau en haut de l'écran (si tu as demandé qu'elles s'affichent en bannière et pas en alerte dans tes Réglages iOS). Dans ce cas quand la bannière s'affiche, si tu veux afficher les boutons, il faut faire glisser ton doigt sur la notification vers le bas pour "dérouler" ces boutons sous la notification. Si tu ne le fais pas les actions de la notif ne seront pas affichées.

    Si tu affiches tes notifications sous forme d'Alerte et non de bannières elles devraient s'afficher directement dans les alertes.

    Si tu avais ton écran verrouillé, ou bien que tu vas retrouver une ancienne notification dans le centre de notifications où tu vois une liste de potentiellement plusieurs notifications les unes en dessous des autres, là  pour faire apparaà®tre les actions ce n'est pas un swipe vers le bas sur la notif qu'il faut faire comme quand elle s'affiche en bannière depuis le haut de l'écran, mais un swipe vers la gauche sur la notif, qui va révéler alors les actions.

    Tout ça est valable pour toutes les applications, c'est comme ça que les actions sur les notifs sont affichées par l'utilisateur, ça ne dépend aucunement de ton code, tu n'as pas le contrôle dessus
  • Merci pour ta réponse Ali.


    Comme tu l'as précisé j'ai bien fait les gestures communes à  toutes les applis.


    J'ai refais un test avec un message moins long pour voir si c'est pas ça qui posait problème (la place qu'utilise le bandeau).


     


    Mais non, les boutons sont toujours inexistants.


     


    Je me demande si dans les réglages, y'a pas un "truc" pour désactiver les notifications interactives. Je n'ai rien trouvé pour le moment.


Connectez-vous ou Inscrivez-vous pour répondre.