2013-04-02 4 views

risposta

0

Seguire questo URL https://firebase.google.com/docs/cloud-messaging/send-message

FCM URL

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

Notifica chiave

private String ANDROID_NOTIFICATION_KEY = "Your key"; 

codice 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()); 
    } 

Questo è tutto !!!

0

Questa è una funzione utilizzata per inviare notifiche da Java all'app Android. questo codice usa JSONObject per aggiungere questo jar al percorso di costruzione del progetto.

nota: Io 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(); 
} 
} 

buona fortuna