Я изучил и реализовал эти удивительные руководства Ray на apns http://www.raywenderlich.com/3443/apple-push-notification-services-tutorial-part-12 http://www.raywenderlich.com/3525/apple-push-notification-services-tutorial-part-2
они работают нормально даже в производственном режиме, я их реализовал, теперь я хотел отображать уведомления типа оповещений, когда приложение находится впередний план (работает) вместо пузырьков, поэтому, что я сделал, я использую nsnotification, я разместил уведомление внутри addMessageFromRemoteNotification: (NSDictionary *) userInfo updateUI: (BOOL) метод updateUI, подобный этому
NSMutableArray* parts = [NSMutableArray arrayWithArray:[alertValue componentsSeparatedByString:@": "]];
message.senderName = [parts objectAtIndex:0];
[parts removeObjectAtIndex:0];
message.text = [parts componentsJoinedByString:@": "];
int index = [dataModel addMessage:message];
[MySingleton sharedMySingleton].Msender = message.senderName;
[MySingleton sharedMySingleton].Mtext = message.text;
[[NSNotificationCenter defaultCenter] postNotificationName:@"Notificationreceived" object:nil];
, а затем я добавилНаблюдатель в контроллере вида входа в систему, подобный этому
- (void)viewWillAppear:(BOOL)animated
{
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(responseFromServer) name:@"TokenRecieved" object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(displaynotif) name:@"Notificationreceived" object:nil];
[super viewWillAppear:animated];
}
и
-(void)displaynotif
{
NSString *msgsender = [MySingleton sharedMySingleton].Msender;
NSString *msgtext = [MySingleton sharedMySingleton].Mtext;
NSString *Compmsg = [NSString stringWithFormat:@"%@ %@", msgsender, msgtext];
UIAlertView * view=[[UIAlertView alloc] initWithTitle:@"Alert" message:Compmsg delegate:self cancelButtonTitle:@"ok" otherButtonTitles:nil];
[view show];
[view release];
}
, теперь у меня возникает проблема, что, когда первое уведомление приходит, оно отображается только один раз, а когда приходит второе, оно отображается дважды (то же самое уведомление) и третье пришло трижды и так далее, я использую этот скрипт php для серверной части, и уведомления отправляются со стороны сервера через веб-форму php
https://github.com/sebastianborggrewe/PHP-Apple-Push-Notification-Server я также удаляю наблюдателяв сделкеЯ не могу понять, что происходит, плз.руководство спасибо