Developer/Android

[Android] [C2DM] Web java source

블로blow 2011. 10. 12. 16:17
728x90
 


public static void androidPush(String regId, String authtoken, String msg) throws Exception {
  try{
   StringBuffer postDataBuilder = new StringBuffer();
  
   postDataBuilder.append("registration_id=" + regId); // 등록ID
   postDataBuilder.append("&collapse_key=1");
   postDataBuilder.append("&delay_while_idle=1");
   postDataBuilder.append("&data.msg=" + URLEncoder.encode(msg, "UTF-8")); // 내용
  
   byte[] postData = postDataBuilder.toString().getBytes("UTF8");
  
   URL url = new URL("https://android.apis.google.com/c2dm/send");
  
   HttpsURLConnection.setDefaultHostnameVerifier(new FakeHostnameVerifier());
   HttpURLConnection conn = (HttpURLConnection) url.openConnection();
  
   conn.setDoOutput(true);
   conn.setUseCaches(false);
   conn.setRequestMethod("POST");
   conn.setRequestProperty("Content-Type","application/x-www-form-urlencoded");
   conn.setRequestProperty("Content-Length",Integer.toString(postData.length));
   conn.setRequestProperty("Authorization", "GoogleLogin auth="+authtoken);
  
   OutputStream out = conn.getOutputStream();
   out.write(postData);
   out.close();
  
   conn.getInputStream();
  
   } catch (Exception e)  {
    e.printStackTrace();
   }
  }
 }

class FakeHostnameVerifier implements HostnameVerifier {

 public boolean verify(String hostname, SSLSession session) {

 return true;

 }

}

728x90