如何在Delphi 10中使用GCM在Android中接收远程推送通知

时间:2016-08-08 12:36:50

标签: http delphi google-cloud-messaging delphi-10-seattle

我正在尝试使用GCM服务发送和接收远程推送通知,当我有Delphi xe7这个方法在这个问题的答案2中工作[Google Cloud Messaging in Delphi XE5?,但在西雅图它的剂量,我得到java错误但是,我已经按照这个问题的答案,并设法得到设备令牌ID,但我不能收到通知,当我发送到我的手机,这是发送的代码:

const
  sendUrl = 'https://android.googleapis.com/gcm/send';
var
  Params: TStringList;
  AuthHeader: STring;
  idHTTP: TIDHTTP;
  SSLIOHandler: TIdSSLIOHandlerSocketOpenSSL;
begin
 idHTTP := TIDHTTP.Create(nil);
try
 SslIOHandler := TIdSSLIOHandlerSocketOpenSSL.Create(nil);
 idHTTP.IOHandler := SSLIOHandler;
 idHTTP.HTTPOptions := [];
 Params := TStringList.Create;
try
  Params.Add('registration_id='+ Memo1.Lines.Text);
  Params.Values['data.message'] := Edit1.Text;
  idHTTP.Request.Host := sendUrl;
  AuthHeader := 'Authorization: key=' + MyServerKey;
  idHTTP.Request.CustomHeaders.Add(AuthHeader);
  IdHTTP.Request.ContentType := 'application/x-www-form-urlencoded;charset=UTF-8';
  idHTTP.Post(sendUrl, Params);
finally
  Params.Free;
end;
finally
 FreeAndNil(idHTTP);
end;

在我的AndroidManifest.template.xml中添加了<service android:name="com.embarcadero.gcm.notifications.GCMIntentService" />,并检查了权利列表中的接收远程推送通知。

0 个答案:

没有答案