¿Cómo enviar notificaciones a la aplicación de Android desde el servidor de Java mediante GCM?

Tengo mi sencilla aplicación de Android que utiliza el servicio web REST. Ahora quiero enviar la notificación de mi servicio web REST a la aplicación de Android usando GCM.

¿Cómo hacer esto? ¿Hay algún tutorial simple para este requisito? Busqué y encontré Google API, pero no entiendo eso.

3 Solutions collect form web for “¿Cómo enviar notificaciones a la aplicación de Android desde el servidor de Java mediante GCM?”

He creado un servidor de prueba basado en Java, implementado como complemento de maven, para el proyecto GCMUtils: https://code.google.com/p/gcmutils/wiki/MavenPlugin#Test_server

Aquí está el código fuente: https://github.com/jarlehansen/gcmutils/tree/master/gcm-test-server

Fuente para el complemento de maven: https://github.com/jarlehansen/gcmutils/tree/master/gcmutils-maven-plugin

Tal vez esto puede ayudarle a empezar?

Siga esta URL https://firebase.google.com/docs/cloud-messaging/send-message

URL de FCM

private String ANDROID_NOTIFICATION_URL = "https://fcm.googleapis.com/fcm/send" 

Clave de notificación

 private String ANDROID_NOTIFICATION_KEY = "Your key"; 

Código Java

 private void sendAndroidNotification(String deviceToken,String message,String title) throws IOException { OkHttpClient client = new OkHttpClient(); MediaType mediaType = MediaType.parse("application/json"); JSONObject obj = new JSONObject(); JSONObject msgObject = new JSONObject(); msgObject.put("body", message); msgObject.put("title", title); msgObject.put("icon", ANDROID_NOTIFICATION_ICON); msgObject.put("color", ANDROID_NOTIFICATION_COLOR); obj.put("to", deviceToken); obj.put("notification",msgObject); RequestBody body = RequestBody.create(mediaType, obj.toString()); Request request = new Request.Builder().url(ANDROID_NOTIFICATION_URL).post(body) .addHeader("content-type", CONTENT_TYPE) .addHeader("authorization", "key="+ANDROID_NOTIFICATION_KEY).build(); Response response = client.newCall(request).execute(); logger.debug("Notification response >>>" +response.body().string()); } 

Eso es !!!

Esta es una función que utiliza para enviar notificaciones desde java a la aplicación android. Este código utiliza JSONObject debe agregar este tarro al proyecto buildpath.

Nota: Yo uso fcm

  import java.io.OutputStreamWriter; import java.net.HttpURLConnection; import java.net.URL; import org.json.JSONObject; public class FcmNotif { public final static String AUTH_KEY_FCM ="AIzB***********RFA"; public final static String API_URL_FCM = "https://fcm.googleapis.com/fcm/send"; // userDeviceIdKey is the device id you will query from your database public void pushFCMNotification(String userDeviceIdKey, String title, String message) throws Exception{ String authKey = AUTH_KEY_FCM; // You FCM AUTH key String FMCurl = API_URL_FCM; URL url = new URL(FMCurl); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setUseCaches(false); conn.setDoInput(true); conn.setDoOutput(true); conn.setRequestMethod("POST"); conn.setRequestProperty("Authorization","key="+authKey); conn.setRequestProperty("Content-Type","application/json"); JSONObject json = new JSONObject(); json.put("to",userDeviceIdKey.trim()); JSONObject info = new JSONObject(); info.put("title", title); // Notification title info.put("body", message); // Notification body info.put("image", "https://lh6.googleusercontent.com/-sYITU_cFMVg/AAAAAAAAAAI/AAAAAAAAABM/JmQNdKRPSBg/photo.jpg"); info.put("type", "message"); json.put("data", info); System.out.println(json.toString()); OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream()); wr.write(json.toString()); wr.flush(); conn.getInputStream(); } } 

buena suerte

  • Cookies HTTP WebView HTTP no funcionan en la API 21
  • Android: Error al cargar la imagen en diferentes versiones de Android
  • Android - Elija el botón Archivo en WebView
  • Configuración de las cookies de Webview de Android desde un archivo HTML en el directorio de activos
  • La cookie de la webview de Android devuelve null
  • Cómo acceder a mi 127.0.0.1:8000 desde Android tablet
  • Cómo tratar un objeto JSON grande en Android
  • Cómo autenticar servicio web sap con ksoap2
  • Configurar una base de datos de servidor en línea y codificar mi aplicación nativa de Android para interactuar con ella
  • Cómo mostrar el contenido web en iOS y Android mediante QML
  • archivo interno del HTML de la demostración del androide
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.