GCM 메시지 전송
* GCM 서버에 메시지 전송 요청
서버 URL : https://android.googleapis.com/gcm/send
HTTP HEADER
Content-Type:application/json
Authorization:key=YOUR_API_KEY
HTTP BODY(JSON)
{
메시지를 전달할 디바이스의 등록 id 리스트
"registration_ids":[" "],
메시지 그룹설정 : 오프라인에서 온라인 상태가 되면 많은 메시지가
전달되는 것을 막고, 그룹내에서 가장 최신의 메시지만 전달.
"collapse_key": "string"
전송할 json 목록 : 총 크기는 4kbyte 제한, 키쌍의 제한은 없음
이미정의된 키 값의 사용은 권장하지 않음.
"data":[list],
디바이스가 아이들 상태일때는 전달하지 않음(기본 false)
"delay_while_idle": boolean
디바이스가 꺼진경우 몇초간 메시지를 서버에 보관할 것인지 설정(기본값은 4주)
"time_to_live": number,
패키지명 지정( 옵션)
"restricted_package_name": "string",
개발자를 위한 옵션으로 실제 전송이 이루어지지 않음.(기본 false)
"dry_run": boolean
}
* GCM Server 라이브러리를 사용하는 경우
final String MY_API_KEY = "code.google.com/apis/console 에서 받은 api 키";
Sender sender = new Sender( MY_API_KEY );
Message message = new Message.Builder().addData("Key", "Value").build();
Result result = sender.send( message, REGISTRATION_ID, 재시도 횟수);
>> Message 는 아래와 같이 구성 가능
Message message = new Message.Builder()
.collapseKey(collapseKey)
.timeToLive(3)
.delayWhileIdle(true)
.addData("key1", "value1")
.addData("key2", "value2")
.build();