728x90

2019.5월 구글에서 GCM removed 되어 FCM 으로 코딩 변경해야 사용 가능하다.

-----------------------------------------------------------------------------------------------------


구글 GCM(Google Cloud Message) 를 이용한 PUSH 메시지 전송을 하려면 https://console.developers.google.com 에서 API 를 등록하고 사용자를 등록해야 한다.


PUSH 메시지 개념은 서버에서 보내는 메시지를 스마트폰에서 받는 것으로 구글에서 제공하는 GCM(Google Cloud Message) 서비스를 이용한다.


현재는 FCM 으로 등록하라고 URL 을 제공하기 때문에 GCM 등록은 쉽지 않다.

FCM 으로 메시지 전송하는 걸 제대로 하려면 PHP 기반 게시판까지 연동해야 될 거 같아서 테스트하고 정리까지 하기에는 시간이 좀 걸릴거 같다.




사용자정보 등록방법



동일한 키를 가지고 서버 IP만 여러개 등록하면 어플 여러개에서 GCM 을 사용할 수 있다.



구글에서 등록할 기능은 위와같이 하면 끝난다.


GCM Sender.php 파일 일부 내용

function AndroidPush($registrationIDs){
    global $message;

    $apiKey ="AIzaSyCoq9ccKiIrovwqm4mY0Ss"; // 생성코드(일부 내용 수정했음)
    $url = 'https://android.googleapis.com/gcm/send';
    $headers = array( 'Authorization: key=' . $apiKey, 'Content-Type: application/json' );

    $data = array('registration_ids' => $registrationIDs, 'data' => array( "msg" => $message ) );

    // Open connection
    $ch = curl_init();

    // Set the url, number of POST vars, POST data
    curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
    curl_setopt($ch, CURLOPT_URL,$url);
    curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 0);
    curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));

    // Execute post
    $reponse = curl_exec($ch);

    // Close connection
    curl_close($ch);
    $_rs=json_decode($reponse,true);
    return $_rs['success'];
}


Android 코드에서 사용할 서비스 계정 ID








728x90
블로그 이미지

Link2Me

,