Я тестирую функцию сообщения APNS в QuickBlox. Я использовал образец кода и использовал единственный параметр пользователя, в котором я создал пользователя («pushuser») и пароль, и добавил критерии аутентификации в код appdelegate.m, как указано инструкциями QuickBlox (см. Код). Приложение прекрасно компилируется, и когда я впервые загрузился на свой iPhone, у меня появилось всплывающее окно о том, чтобы разрешить push-уведомления для приложения. Я проверяю настройки iPhone в области уведомлений и вижу, что приложение находится в их и разрешено отправлять уведомления. Когда я перехожу в панель администратора QuickBlox и пытаюсь отправить тестовое сообщение Simple push. Я получаю сообщение об ошибке в верхней части панели администратора «Нет получателей». По крайней мере один пользователь должен быть подписан на APNS (Apple Push) (через SDK или REST API) ». Мои QuikBlox ApplicationID, AuthorizationKey и AuthorizationSecret включены правильно, так как я могу делать другие вещи с помощью приложения, которое их требует. Любая помощь приветствуется. Благодаря!Вопрос о тестировании APNS QuickBlox
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions: (NSDictionary *)launchOptions
{
// Set QuickBlox credentials (You must create application in admin.quickblox.com)
[QBSettings setApplicationID:xxxx];
[QBSettings setAuthorizationKey:@"xxxxxx"];
[QBSettings setAuthorizationSecret:@"xxxxxx"];
[QBAuth createSessionWithDelegate:self];
self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
// Show Splash
self.splashController = [[[SplashController alloc] initWithNibName:@"SplashViewController" bundle:nil] autorelease];
self.window.rootViewController = (UIViewController*)self.splashController;
[self.window makeKeyAndVisible];
return YES;
QBASessionCreationRequest *extendedAuthRequest =[QBASessionCreationRequest request];
extendedAuthRequest.userLogin = @"pushuser";
extendedAuthRequest.userPassword = @"pushuserpwd";
[QBAuth createSessionWithExtendedRequest:extendedAuthRequest delegate:self];
}
#pragma mark -
#pragma mark QBActionStatusDelegate
// QuickBlox queries delegate
- (void)completedWithResult:(Result *)result{
if(result.success) {
// Create session result
if([result isKindOfClass:QBAAuthSessionCreationResult.class]){
// You have successfully created the session
// Subscribe Users to Push Notifications
[QBMessages TRegisterSubscriptionWithDelegate:self];
// Subscribe User to Push Notifications result
}else if([result isKindOfClass:QBMRegisterSubscriptionTaskResult.class]){
// Now you can receive Push Notifications!
}
}else{
NSLog(@"errors=%@", result.errors);
}
}
Как вы решили эту проблему? поскольку я столкнулся с той же проблемой! – Maulik
@Maulik, я фактически использовал другого провайдера APN, так как это сводило меня с ума. Другой провайдер был относительно прост в настройке, и до сих пор у меня не было проблем. Я даже не могу вспомнить опубликование этой проблемы с помощью quickblox..lol – bachma0507