2012-07-13 13 views
11

Necesito una aplicación de muestra para la mensajería de Google Cloud. con un servidor de muestra para probar mi aplicación. ¿Puede alguien ayudarme con esto?Google Cloud messaging - Sample Server

Necesito un servidor de muestra para probar mi código, ya escribí el código, pero no sé si funcionará o no. no sé la codificación del lado del servidor así que cualquier persona podría ayudarme en esto. Aquí está mi código

servicio intención

package com.example.pushnotificationsample; 

import android.content.Context; 

public class GCMIntentService extends GCMBaseIntentService { 

protected GCMIntentService(String senderId) { 
    super(senderId); 
    // TODO Auto-generated constructor stub 
} 

@Override 
protected void onError(Context arg0, String arg1) { 
    // TODO Auto-generated method stub 
} 

@Override 
protected void onMessage(Context arg0, Intent msgIntent) { 
    // TODO Auto-generated method stub 
    Log.d("GCM", "RECIEVED A MESSAGE"); 
    //  String msg=msgIntent.getStringExtra("Message"); 
    Log.d("GCM", msgIntent.toString()); 
    // Get the data from intent and send to notificaion bar 

} 

@Override 
protected void onRegistered(Context arg0, String arg1) { 
    // TODO Auto-generated method stub 
} 

@Override 
protected void onUnregistered(Context arg0, String arg1) { 
    // TODO Auto-generated method stub 
} 
} 

mi actividad principal

package com.example.pushnotificationsample; 

import android.app.Activity; 
import com.google.android.gcm.GCMRegistrar; 
import android.os.Bundle; 
import android.util.Log; 

public class MainActivity extends Activity { 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    GCMRegistrar.checkDevice(this); 
    // GCMRegistrar.checkManifest(this); 
    final String regId = GCMRegistrar.getRegistrationId(this); 
    if (regId.equals("")) { 
     GCMRegistrar.register(this, "555817657362"); 
     Log.v("Msg", "registered"); 
    } else { 
     Log.v("Msg", "Already registered"); 
    } 
} 


} 
+2

Estimado si ha descargado el "paquete GCM del administrador del SDK", hay ejemplos para Cliente, Servidor. Simplemente revisa el directorio ** android-sdk/extras/google/GCM ** –

+0

Tnx mucho Paresh – Dinu

+0

@PareshMayani http://chat.stackoverflow.com/transcript/message/4508859#4508859 pero no se puede encontrar en el administrador de sdk en Carpeta de extras – Khan

Respuesta

23

Es necesario descargar a través de Android SDK. Vaya a Ventana-> Administrador de Android SDK. desplácese hacia abajo para obtener más información, consulte "Google Cloud Messaging" e instálela.

después de completado, es posible comprobar en: android-sdk/extras/google/gcm/samples

o usted podría intentar esto (he subido yo): gcm

para el lado del servidor, compruebe en esta respuesta: https://stackoverflow.com/a/11253231/554740

4

me encontré con un cliente emisor de código abierto para Windows aquí: https://gcm.codeplex.com/

  • token de dispositivo se puede encontrar después de implementar el código de registro GCM y recuperar su ID de registro a través de la aplicación cliente (configuración de un punto de interrupción o imprimir declaración por lo que son capaces de copiar/pegar este valor, es bastante larga)
  • clave
  • de autenticación se encuentra después de la configuración de su proyecto en la consola de desarrolladores de Google

screenshot

6

La herramienta de línea de comandos "curl" se puede utilizar para enviar mensajes a dispositivos registrados con GCM.

curl -X POST \ 
    -H "Authorization: key= <YOUR_AUTHORIZATION_KEY>" \ 
    -H "Content-Type: application/json" \ 
    -d '{ 
    "registration_ids": [ 
    "<YOUR_DEVICE_TOKEN>" 
    ], 
    "data": { 
    "message": "<YOUR_MESSAGE>" 
    } 
}' \ 
    https://android.googleapis.com/gcm/send 

Consulte esta publicación en el blog para obtener más detalles. http://www.zinniakhan.com/2014/07/check-google-cloud-messaging-gcm-client.html.

+0

Las respuestas de solo enlace se desaconsejan aquí en Stack Overflow. En su lugar, [es preferible] (http://meta.stackoverflow.com/q/8259) incluir aquí las partes esenciales de la respuesta y proporcionar el enlace para referencia. – drs

+1

Gracias por indicar, respuesta actualizada. – user3002993

+1

funciona como un encanto para mí, tenga en cuenta! no coloque ningún personaje como (que debe ser espaciado) "Soy yo, un mensaje falso" en el mensaje;) porque le producirá mucho dolor. – cV2

Cuestiones relacionadas