Enviar notificaciones push a Android

Actualmente estoy desarrollando servicios web Java que se ejecutan en WebLogic en un servidor. Estos servicios web son llamados por una aplicación móvil, que es desarrollada por otro equipo. Hay un requisito de que necesito enviar notificaciones push a la aplicación móvil. Mi desarrollo actual no me obliga a hacer ningún desarrollo móvil ya que sólo estoy haciendo el desarrollo del servidor. Tampoco tengo experiencia en desarrollo móvil. ¿Cómo se desarrollan las notificaciones push a los dos dispositivos Android?

Gracias.

5 Solutions collect form web for “Enviar notificaciones push a Android”

Requisito previo para la aplicación GCM

  1. Clave del servidor de la API de Google
  2. GCM RegId del dispositivo Android para comunicarse a través de GCM

Si obtiene un concepto claro sobre GCM, por favor visite aquí

Su servidor hospedado no necesita necesitar ningún Ip / HostName para enviar el Mensaje porque este mensaje deliberará vía com.google.android.gcm.server.Sender esta clase. Esta clase se comunicará internamente a GCM Server. Está configurando esta clase de esta manera:

 Sender sender = new Sender(API_KEY); 

Puede enviar mensajes utilizando el servidor GCM. Este código funcionará para enviar notificaciones push a los dispositivos. Esto puede enviar notificación a cualquier aplicación Android / IOS desde el servidor java.

Aquí está el tarro de esta biblioteca del servidor de GCM.

Aquí, este constructor obtiene MESSAGE y deviceGcmId donde tiene que enviar Push Message.

 public PushNotification(String id, String message) { this.receiverID = id; this.gcmMessage = message; } 

Aquí está el ejemplo de código:

 import com.google.android.gcm.server.Message; import com.google.android.gcm.server.MulticastResult; import com.google.android.gcm.server.Result; import com.google.android.gcm.server.Sender; public class PushNotification { private String receiverID; private String gcmMessage; String MESSAGE_KEY = "YOUR_MESSAGE_KEY"; String API_KEY = "YOUR_API_KEY"; Result result; Sender sender; Message message; MulticastResult multicastResult; public PushNotification() { } public PushNotification(String id, String message) { this.receiverID = id; this.gcmMessage = message; } public boolean sendSinglePushNotification() { try { sender = new Sender(API_KEY); message = new Message.Builder().timeToLive(30).addData(MESSAGE_KEY, gcmMessage).build(); result = sender.send(message, receiverID, 1); if (result != null && result.getErrorCodeName() == null) { return true; } } catch (Exception ex) { System.err.println(ex.getMessage()); } return false; } } 

Puede llamar a esta clase de esta manera:

 PushNotification notification=new PushNotification("DEVICE_GCM_ID","MESSAGE HAVE To SEND"); notification.sendSinglePushNotification(); 

Eso es 🙂

Si desea enviar Push Notification en múltiples plataformas use Parse.com pero el problema aquí es que Parse.com va a parar sus servicios el 28 de enero de 2017. Tiene alternativas como dirigible urbano y muchos más. Yo personalmente sugiero dirigible urbano.

Puede probar Sever Sent Event ( SSE ) de Jersey para ver si cumple con su requisito.

Puedes usar Google Cloud Messaging para hacer esto, ahora es compatible con Android e iOS. Su libre y no tiene límites al número de notificación.

¿Cómo funciona?

Simplemente, necesitas generar una ID de registro desde tu móvil y enviarla a tu servidor, y cuando necesites enviar una notificación simplemente envía el ID de registro y el mensaje a GCM.

Por favor, compruebe este enlace de Google sobre GCM:

https://developers.google.com/cloud-messaging/

Y este enlace sólo echar un vistazo rápido sobre el código del servidor (escrito en PHP):

http://www.androidhive.info/2012/10/android-push-notifications-using-google-cloud-messaging-gcm-php-and-mysql/

Hay algunos cambios que puedes notar en el primer enlace.

Por último, compruebe este enlace explica el código del cliente paso a paso:

http://www.androidwarriors.com/2015/10/push-notification-using-gcm-in-android.html

Espero que esto le ayude, no dude en hacer cualquier pregunta.

Enviar notificaciones push a Android

  private void pushNotification(String handlename) { StringEntity entity = null; JSONObject jsonObject = new JSONObject(); String referesedtoken = FirebaseInstanceId.getInstance().getToken(); try { jsonObject.put("to", clientToken); jsonObject.put("priority", "high"); JSONArray jsonArray = new JSONArray(); jsonArray.put(referesedtoken); JSONObject jsonObject1 = new JSONObject(); jsonObject1.put("body", handlename); jsonObject1.put("commonContact", commonContact); jsonObject1.put("profileType", profileType); jsonObject1.put("notification-type", "chat"); jsonObject1.put("target", handlename); jsonObject1.put("email", authPreferences.getEmailAddress()); jsonObject1.put("UniqueId", authPreferences.getUserUid()); jsonObject1.put("profilePicUrl", authPreferences.getMyProfilePicImageUrl()); jsonObject1.put("title", profileBeenClasss.getFirstname() + " " + profileBeenClasss.getLastname() + " has sent message to you"); jsonObject.put("registrationIDs", jsonArray); jsonObject.put("notification", jsonObject1); entity = new StringEntity(jsonObject.toString()); } catch (JSONException e) { e.printStackTrace(); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } AsyncHttpClient client = new AsyncHttpClient(true, 80, 443); client.setTimeout(80000); client.addHeader("Authorization", "key=AIzaSyCxKiM-LlNHfUOZ3QiiZfSGTo3vTAZdAAI"); client.post(this, "https://fcm.googleapis.com/fcm/send", entity, "application/json", new TextHttpResponseHandler() { @Override public void onSuccess(int statusCode, Header[] headers, String res) { System.out.println("Send Notification sucessfully" + res.toString()); } @Override public void onFailure(int statusCode, Header[] headers, String res, Throwable t) { System.out.println("notification fail", res.toString()); } } ); } 
  • Gcm GoogleCloudMessaging nueva implementación
  • Cómo implementar XMPP para enviar notificaciones push
  • Cómo activar una actividad mediante una notificación local creada a partir de una notificación remota
  • GCM ¿Cómo puedo detectar si la aplicación está abierta y, de ser así, aparece un cuadro de alerta en lugar del flujo normal de notificaciones?
  • Excepción al abrir Parse push notification
  • Android - Stop (Interceptar) C2DM Notificación de empuje si la aplicación está en ejecución?
  • Cómo abrir la actividad actual que está abierta mientras hace clic en la notificación
  • ¿Cómo mostrar la notificación de Android cada 48 horas?
  • Notificaciones Locales en Cordova 3.0.0
  • Notificación push de Android: determina si se muestra Notification.bigContentView
  • ¿Cómo configurar Google Cloud Messaging para Android?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.