이번에 골치아픈 프로젝트인 스프링기반의 자바웹서버에서 안드로이드앱으로 푸시알림을
보내야 하는 프로젝트를 진행중이였습니다. 어쩌다 보니 푸시 알림을 앱이 못 받아서
서버키가 문제인지 Device token이 문제인지 가장 간단한 디버깅 조건이 필요했습니다.
구글링을 통해서 FCM 방식으로 변환전에 GCM으로는 푸시알림이 잘되나 테스트해야 했습니다.
구글링을 통해서 찾은 GCM소스를 최대한 간소화 시켰습니다.
<?
$reg_id="디바이스 토큰을 여기다 넣으세요";
$headers = array(
'Content-Type:application/json',
'Authorization:key=서버키를 여기다 넣으세요'
);
$temp_msg = "Message Test";
$arr = array();
$arr['data'] = array();
$arr['data']['msg'] = "메시지";
$arr['registration_ids'] = array();
$arr['registration_ids'][0] = "$reg_id";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://android.googleapis.com/gcm/send');
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POSTFIELDS,json_encode($arr));
$response = curl_exec($ch);
echo $response;
curl_close($ch);
?>