Problème avec notification globale!
elf
Membre
Bonjour,
Je viens de rencontrer un drôle de bug: la console ne veut pas poster une notif au centre globale... Le log me dit 2006-08-09 10:30:36.472 AwayHelper[11765] CFLog (0): *** Attempt to post a distributed notification (SSAwayChangeStatusNotif) with a non-string object ignored.
Voilà mon code pour la poster:
[states objectAtIndex:stateIndex] est un objet de type SSState qui est une classe custom...
Si je comprens bien on ne peut envoyer que des strings? c'est bizzare et stupide!
Merci d'avance,
elf
Je viens de rencontrer un drôle de bug: la console ne veut pas poster une notif au centre globale... Le log me dit 2006-08-09 10:30:36.472 AwayHelper[11765] CFLog (0): *** Attempt to post a distributed notification (SSAwayChangeStatusNotif) with a non-string object ignored.
Voilà mon code pour la poster:
[[NSDistributedNotificationCenter defaultCenter] postNotificationName:@"SSAwayChangeStatusNotif" object:[states objectAtIndex:stateIndex] userInfo:nil deliverImmediately:YES];<br />
[states objectAtIndex:stateIndex] est un objet de type SSState qui est une classe custom...
Si je comprens bien on ne peut envoyer que des strings? c'est bizzare et stupide!
Merci d'avance,
elf
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Bin, si tu lis la doc (gaussons-nous), effectivement, il est clairement dit que object ne peut être que un NSString.
Quant à juger sur la stupidité ou la bizarrerie...
Les notifications sont là pour... notifier, et non envoyer des données (complexes) entre tâche. Pour ça, il existe d'autres mécanismes plus souples/performants.
Va voir du côté des ditributed objects : c'est puissant et simple à mettre en oeuvre (ça permet de rendre "visible" à d'autres tâches un objet et ses méthodes créé dans une tâche).
.
j'ai trouvé un moyen de passer outre cette limitaion...
j'envoi une archive de mon objet dans le userinfo (j'ai du me fatiguer a implémenter NSCoding)
merci quand même,
ça pourras m'être utile,
elf