2013-02-14 3 views
2

Так что везде, где я смотрю, регистрация устройства подразумевает использование сервера Tomcat Google, установление этого, а затем регистрацию устройства против него. Это единственный способ зарегистрировать устройство? Существуют ли привязки на других языках или способы воспроизведения функций реестра без использования их сервера Tomcat? Благодарю.устройства для регистрации вручную для GCM

ответ

4

Вы можете создать сервер регистрации GCM на любом языке, у меня есть мой в PHP, поэтому он не должен быть Java вообще.

API GCM использует сообщения JSON для связи с сервисом Google, поэтому почти любой язык способен отправлять JSON HTTP-запрос.

Вот пример PHP сервер для обработки GCM регистрации

$apiKey = "YOUR KEY"; 
    $registrationIDs = "REGISTRATION IDs"; 

    $url = 'https://android.googleapis.com/gcm/send'; 

    $fields = array(  
      'collapse_key' => $collapse_key, 
      'registration_ids' => $registrationIDs, 
      'data'    => $data_array, 
      'time_to_live' => $time_to_live 
      ); 

    $headers = array( 
       'Authorization: key=' . $apiKey, 
       'Content-Type: application/json' 
      ); 

    // Open connection 
    $ch = curl_init(); 

    // Set the url, number of POST vars, POST data 
    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_POSTFIELDS, json_encode($fields)); 

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

Here is a Python GCM server

+0

я посмотрел http://developer.android.com/google/gcm, источник материала сервера не было сразу видно. знаете ли вы о привязках к python или о месте для просмотра источника java, чтобы получить представление о том, что запрашивается и где? – tipu

+0

Вот питон один: https://github.com/geeknam/python-gcm – iTech

+0

Код, который вы написали, оказался полезным, используя его как шаблон для моего собственного, спасибо. – tipu

Смежные вопросы