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

Push сообщения IOS - как получить токен ?


rustam_d

Вопрос

Вот такой код судя по форумам у многих работает норм...но не у меня.
procedure TForm1.Button1Click(Sender: TObject);
var
  ADeviceID, ADeviceToken: string;
begin
  APushService := TPushServiceManager.Instance.GetServiceByName(TPushService.TServiceNames.APS);
  AServiceConnection := TPushServiceConnection.Create(APushService);
  AServiceConnection.Active := true;
  AServiceConnection.OnChange := OnChange;
  AServiceConnection.OnReceiveNotification := OnReceiveNotificationEvent;
  ADeviceID := APushService.DeviceIDValue[TPushService.TDeviceIDNames.DeviceID];
  ADeviceToken := APushService.DeviceTokenValue[TPushService.TDeviceTokenNames.DeviceToken];

Писал гонсалес еще для XE7, толи все работают на ХЕ7 то ли у меня руки кривые,

но на строке ADeviceID ...вылетает access violation ...

Мои настройки: XE8upd1, IPAD Estay, OX Osemite 10.10(VMWare).

Сертификат APN выпускал, но чую не в нем дело...

Что только не делал...программа то работает, просто этот код погоняет...

 

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

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

  • 0

Неужели никто не юзает пуши в ИОС ?

Подсобите пожалуйста...проект горит...

 

APN сертификат завел, скачал его...но где его указать в делфи не пойму...гонсалес чегото не договорил...

Ссылка на комментарий
  • 0
 var
   APS : TPushService;
   ASC : TPushServiceConnection;
 begin

  APS := TPushServiceManager.Instance.GetServiceByName(TPushService.TServiceNames.APS);
  ASC := TPushServiceConnection.Create(APS);
  ASC.OnChange := DidAPNSChanged;
  ASC.OnReceiveNotification := form1.OnReciveAPN;

  ASC.Active := True;



procedure TXAPNS.DidAPNSChanged(Sender: TObject;
  AChange: TPushService.TChanges);
begin
  if TPushService.TChange.DeviceToken in AChange then
  begin
    FDevToken := APS.DeviceTokenValue[TPushService.TDeviceTokenNames.DeviceToken] ;



Так у меня работает все на ура

Ссылка на комментарий
  • 0
 var
   APS : TPushService;
   ASC : TPushServiceConnection;
 begin

  APS := TPushServiceManager.Instance.GetServiceByName(TPushService.TServiceNames.APS);
  ASC := TPushServiceConnection.Create(APS);
  ASC.OnChange := DidAPNSChanged;
  ASC.OnReceiveNotification := form1.OnReciveAPN;

  ASC.Active := True;



procedure TXAPNS.DidAPNSChanged(Sender: TObject;
  AChange: TPushService.TChanges);
begin
  if TPushService.TChange.DeviceToken in AChange then
  begin
    FDevToken := APS.DeviceTokenValue[TPushService.TDeviceTokenNames.DeviceToken] ;



Так у меня работает все на ура

 

не работает, тот же access violation, сообщите пож. вашу конфигурацию, у вас XE8 ?

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

XE8 без апдейтов.

На какой строке AV?

 

Provisioning profile должен включать APN.

uses: System.PushNotification, FMX.PushNotification.iOS

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

XE8 без апдейтов.

На какой строке AV?

 

Provisioning profile должен включать APN.

uses: System.PushNotification, FMX.PushNotification.iOS

xenon54 заработало, спс!

 

отсутствовал FMX.PushNotification.iOS в разделе uses

Why do I love you FMX!!!??? сколько крови он выпьет еще...я п'лачу...потерять неделю из-за такой ошибки...жесть

ведь компилиться без него...ком-пи-ли-ться!!!...

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

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

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

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

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

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

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

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

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

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

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