메뉴 건너뛰기

프로그램언어

조회 수 6044 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
이번에 골치아픈 프로젝트인 스프링기반의 자바웹서버에서 안드로이드앱으로 푸시알림을
보내야 하는 프로젝트를 진행중이였습니다. 어쩌다 보니 푸시 알림을 앱이 못 받아서
서버키가 문제인지 Device token이 문제인지 가장 간단한 디버깅 조건이 필요했습니다.

구글링을 해보니 PHP로 보내는 FCM소스가 있었으나 배열로 되어 있어서 배열 부분은 제거
하고 가장 간단하게 서버키와 Device token 1:1 로 바꿔봤습니다.

저같은 경우를 위해서 가장 간단한 fcm푸시 알림을 테스트 하기위한 PHP소스입니다.

<?php 
function send_notification ($tokens, $message)
{
$url = 'https://fcm.googleapis.com/fcm/send';
$fields = array(
'registration_ids' => $tokens,
'data' => $message
);
        $key = "서버키를 여기다 넣으세요";
$headers = array(
'Authorization:key =' . $key,
'Content-Type: application/json'
);
       
 $ch = curl_init();
       curl_setopt($ch, CURLOPT_URL, $url);?
       curl_setopt($ch, CURLOPT_POST, true);
       curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
       curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
       curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 0);  
       curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
       curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($fields));
       $result = curl_exec($ch);           
       if ($result === FALSE) {
           die('Curl failed: ' . curl_error($ch));
       }
       curl_close($ch);
       return $result;
}
    


     $tokens = array();
     $tokens[0] = "디바이스 토큰을 여기다 넣으세요";
  
     $myMessage = "Message Test"
     if ($myMessage == ""){
$myMessage = "Newly registered.";
     }

     $message = array("message" => $myMessage);
     $message_status = send_notification($tokens, $message);
     echo $message_status;

 ?>

List of Articles
번호 제목 날짜 조회 수
320 CodeIgniter에서 PHPExcel 사용하기 file 2017.03.06 20289
319 csv파일 다루기. fputcsv(), fgetcsv() 2021.03.26 558
318 cUrl를 이용한 json 데이타 주고 받기 2020.09.28 1253
317 curl을 이용하여 post, get 방식 으로 데이터 전송하기 2023.01.12 331
316 current() next() key() 그외 배열관련 함수 2021.03.26 253
315 date() 함수의 출력 형식 2021.03.26 241
314 DAUM 지도 API 좌표→주소(주소->좌표) 변환 2020.10.05 431
313 DB 내용을 화면에 출력(이중 for 문) 2015.04.14 21246
312 DB 연동 4단 셀렉트 박스 2018.09.28 6085
311 DB상의 많은 파일을 한꺼번에 다운받기 2014.02.27 28332
310 dddotag - 허용하지 않는 태그 걸러내기 2019.01.16 1850
309 Drag/Drop HTML elements 2014.03.26 19535
308 ereg(), eregi(), ereg_replace(), eregi_replace(), split() 대체 2023.01.12 227
307 explode - 문자열 나눔 2016.12.23 19943
» fcm 푸시 알림 php 테스트 2018.07.19 6044
305 fileatime 파일에 최종적으로 접근한 시간을 반환 2016.12.23 18117
304 fopen 파일 열기 2015.04.14 20297
303 FPDF - PHP로 PDF 만들기 2014.02.27 21075
302 gcm 푸시 알림 php 테스트 2018.07.19 5582
301 gd_info 사용 가능한 GD 라이브러리에 대한 정보를 배열로 반환 2016.12.23 17989
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 17 Next
/ 17

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved