자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다. 
  • 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)

본 게시판은 개발자들이 자유롭게 질문과 답변을 공유하는 게시판입니다.
* 따라서 최대한 정중하게 질문을 올려 주세요.
* 질문을 상세히 작성해 주실 수록 좋은 답변이 올라 옵니다.
* 바쁜 와중에도 답변을 주시는 분들께 감사 댓글 필수
-----------------------------------------------------------------------------------------------

 

안녕하세요.

 

윈도우즈에서는 Idhttp컴포넌트를 이용하여 아래와 같이 하면 Notification을 보낼 수 있으나 firemonkey에서는 ssl 모듈을 로드하지 못하여 보낼수 없다고 합니다. restclient, restrequest, restresponse 컴포넌트를 이용한 fcm Notification 보내는 방법을 요청합니다.

 

아래는 오상현님께서 알려주신 윈도우즈용 어플에서 Notification 보내는 소스

 

unit u_mainserver;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, System.PushNotification,
  System.JSON, IdIOHandler, IdIOHandlerSocket, IdIOHandlerStack, IdSSL,
  IdSSLOpenSSL, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient,
  IdHTTP;

type
  TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    dt_message: TEdit;
    btn_sendmsg: TButton;
    Memo1: TMemo;
    IdHTTP1: TIdHTTP;
    IdSSLIOHandlerSocketOpenSSL1: TIdSSLIOHandlerSocketOpenSSL;
    procedure btn_sendmsgClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.btn_sendmsgClick(Sender: TObject);
var
  AJson : TJSonObject;
  AJsonData : TJSonObject;
  ARegisterIds : TJsonArray;
  AData, AResponseContent : TStringStream;
  DeviceToken : String;
begin
  ARegisterIds := TJSonArray.Create();
  AJSon := TJSonObject.Create();
  try
    // Set Device token
// sampleapp1    DeviceToken :='APA91bGzF9sjjWusQ2b4pZjMmyTWJnZF6woK6MseaH-d_ocn1p_-sp9086tVgpjBKPhSBwOXsRURyj_lGFCM3Qnioq8eqSO5YfFJzEuYtlJ350dxnvXj1FakhW3NAMfI9VWfi8MV3SiQ';
    DeviceToken :='APA91bHvDIljDGdbSp7KFpjDdlT7KMxXXMqUmGE1W0LBZjANYocimlmjRMDJ63Bz_WCL-csofnST14HnM_01aEuGLk57i8weo3FFnU8vk1usC-BWKDP8ysGkcHWoNU3tYgAsGbmrptkX';

    // Set the device token
    ARegisterIds.Add(DeviceToken);

    // Create JSon to Send;
    AJSonData := TJSonObject.Create;
    AJSonData.AddPair('id','12345678');
    AJSonData.AddPair('message',dt_message.Text);

    // Add the information to send GCM Server
    AJSon.AddPair('registration_ids', ARegisterIds);
    AJson.AddPair('data',AJSonData);

    // Set the Header.
    IdHttp1.Request.ContentType := 'application/json';

    // Set the key for server application
    IdHttp1.Request.CustomHeaders.AddValue('Authorization','key=AIzaSyDRwARpsug8D5X1MjjF6wyrY3AxhGUliPM');

    // Send the Notification
    AData := TStringStream.Create(AJSon.ToString);
    Adata.Position := 0;
    AResponseContent := TStringStream.Create;
    IdHttp1.Post('https://fcm.googleapis.com/fcm/send',AData,AResponseContent);
  finally
    Memo1.Lines.Add(AJSon.ToString);
    Memo1.Lines.Add(AResponseContent.DataString);
  end;
end;

end.

 

감사합니다.
 

번호 제목 글쓴이 날짜 조회 수
공지 [프로그래밍 강의] 2021.6~2021.12 관리자 2015.01.22 39922
공지 유용한 관련 사이트 관리자2 2014.03.20 79450
1232 안드로이드애서 글자 주변에 테두리(라인?) 이 생깁니다. [3] file nervsystem 2018.11.13 738
1231 [공유] 델파이 소스코드로 델파이 버전을 알수 있나요? 험프리 2020.03.03 739
1230 안드로이드에서 app 실행 후 백그라운드시 이벤트는 어떻게? [1] devpro 2017.05.05 742
1229 어제부터 델파이 실행시 보안 경고 가 뜨네요 [1] file 미스터몽키 2018.07.12 743
1228 FDMemTable 를 Query 로 읽기 [1] 송동진 2017.05.06 744
1227 갤럭시 s20 삼성ui3.0 업데이트 후 앱 파이어몽키 앱 튕깁니다.?? kerry 2020.12.21 744
1226 퀀텀그리드 이벤트 관련 문의드립니다. [1] BW 2018.09.19 745
1225 NFC 관련 태블릿 안드로이드 개발 관련 자료 [1] file 미스터몽키 2019.09.28 746
1224 wsd프린트 자동포트 설치 시 출력이 안됨. 난난난난난 2020.05.27 746
1223 FireDAC사용 쿼리하는 동안 진행중 표시 어떻게..? [2] 공감 2018.10.01 747
1222 델파이에서 POST방식으로 IE 새창 호출 [1] 델파이PHP초보 2019.10.11 747
1221 Fastreport와 QuickReport중 장기적으로 볼때 어떤게 나은가요? [3] 화이부동 2016.09.12 749
1220 이 에라 메세지는 어떻게 처리하는지요? [1] file 화이부동 2016.09.19 749
1219 DB에 이미지 등록 syc 2016.01.15 749
1218 XE3 코드 에디터 문의 [1] cdrd 2015.02.02 749
1217 자료실 jar 연동하는것을 보고서.. [1] file 광수생각 2019.04.30 750
1216 XE8 update1 설치이후 Option 들어갈 때 오류발생 [5] 조용한아찌 2015.06.25 750
1215 [마이그레이션][델파이5] Excel 컴포넌트[ Servers]가 없어졌어요. file 험프리 2016.06.28 750
1214 [재문의]seattle 버전 ios9 "External Exception 434C4E47432B2B00" 에러 [3] 사랑남 2015.11.20 750
1213 [시작하는 사람들을 위한 델파이 프로그래밍] 모듈 13 - Exercise 4 [1] 관리자 2016.05.10 751