Перейти к содержанию
Fire Monkey от А до Я
  • 0

[IOS]Notification.Number


Ingalime

Вопрос

Воспользовалась севером ZuBy для получения пушей:

http://fire-monkey.ru/topic/3840-статья-настройка-пуш-уведомлении-через-сервис-firebase-для-android-и-ios-часть-2/

Все работает, пуши приходят. Однако на экране у приложения IOS не появляться красный кружочек с цифрой.

В программе установлено в OnReceiveNotificationEvent:

Notification->Number = 1;
NotificationC->ApplicationIconBadgeNumber = 1;

Не подскажите как что упущено? Спасибо.

 

Изменено пользователем Ingalime
Ссылка на комментарий

Рекомендуемые сообщения

  • 0

Вот полный код. Повторюсь пуши приходят нормально, а вот красного значка у ярлыка приложения не появляется на iphone. :(

void __fastcall TFormStart::OnReceiveNotificationEvent(TObject *Sender,
	TPushServiceNotification* const ANotification)
{

 const String FCMSignature = L"gcm.notification.body";
 const String GCMSignature = L"message";
 const String APNsSignature = L"alert";
 String aText = "";
 TJSONValue * aObj;

	#if defined(__ANDROID__)
		aObj = ANotification->DataObject->GetValue(GCMSignature);
		if(aObj != NULL)
		   {
			aText = aObj->Value();
		   }
		   else
			  {
			   aText = ANotification->DataObject->GetValue(FCMSignature)->Value();
              }
	#endif

	#if defined(__APPLE__) && (defined(__arm__) || defined(__arm64__))
		  aObj = ANotification->DataObject->GetValue(APNsSignature);
		  if (aObj != NULL)
		   {
			aText = aObj->Value();
		   }
    #endif

//умный указатель unique_ptr С++ ему не надо Free
 std::unique_ptr<TNotificationCenter> NotificationC(new TNotificationCenter(NULL));
 std::unique_ptr<TNotification> Notification(new TNotification());

 if(NotificationC->Supported() && aText != "")
   {
	Notification->AlertBody = aText;
	//Включаем звук при выводе сообщение
	Notification->EnableSound = true;
	//Устанавливаем цифру на иконке приложения
	Notification->Number = 1; //не показвает значок :(
    NotificationC->ApplicationIconBadgeNumber = 1;
	//Выводим сообщение из приложения
	NotificationC->PresentNotification(Notification.get());
   }

}

 

Ссылка на комментарий
  • 0

Честно говоря, не понимаю о чем речь... Я делаю пуш уведомления согласно статье ZyBY с этого сайта:

http://fire-monkey.ru/topic/3840-статья-настройка-пуш-уведомлении-через-сервис-firebase-для-android-и-ios-часть-2/

Все работает, но не показывает ярлык уведомления на иконке приложения на экране мобильного телефона IOS. Ни о каком JSON объекте в статье речь не идет, а мой код выше не показывает ярлык уведомления на экране у приложения...

Как правильно в этой статье?

Ссылка на комментарий
  • 0

Нужно внести изменение к код php сервера 

вместо строки

$fields['notification'] = array('body' => $text, 'title' => $title);

нужно вставить

$fields['notification'] = array('body' => $text, 'title' => $title, 'sound' => 'default', 'badge' => $badge);

 

Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...