手动注册GCM设备

时间:2013-02-14 08:26:54

标签: android google-cloud-messaging

所以我看到的任何地方,注册设备都涉及使用谷歌的Tomcat服务器,进行设置,然后针对它注册设备。这是注册设备的唯一方法吗?是否有其他语言的绑定或方法来重现寄存器功能而不使用他们的Tomcat服务器?感谢。

1 个答案:

答案 0 :(得分:4)

您可以使用任何语言构建GCM注册服务器,我在PHP中使用它,因此它根本不需要是Java。

GCM API使用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