CERCA
PER MODELLO
FullScreen Chatbox! :)

Utente del giorno: gianpassa con ben 2 Thanks ricevuti nelle ultime 24 ore
Utente della settimana: 9mm con ben 10 Thanks ricevuti negli ultimi sette giorni
Utente del mese: 9mm con ben 34 Thanks ricevuti nell'ultimo mese

Visualizzazione dei risultati da 1 a 6 su 6
Discussione:

android push notification

Se questa discussione ti è stata utile, ti preghiamo di lasciare un messaggio di feedback in modo che possa essere preziosa in futuro anche per altri utenti come te!
  1. #1
    Baby Droid


    Registrato dal
    Oct 2012
    Messaggi
    26

    Ringraziamenti
    1
    Ringraziato 0 volte in 0 Posts
    Predefinito

    android push notification

    Salve a tutti, sto creando un app. che fa uso delle android push notification.

    il problema e che sembra tutto configurato bene api key e applicazion id ma ricelo questo errore:

    errore in fase di registrazione con il server jav.io.FileNotFoundException: poi mi da il link del file registred.php che ho messo nella cartella del mio spazzio web di aruba.

    qualcuno puo darmi un consiglio, in effetti sembra che on trovi il file m il link e giusto http://www.nomemiohost.com/cartellacontenentefile/

    grazie in anticipo.

  2.  
  3. #2
    Androidiano


    Registrato dal
    Mar 2014
    Messaggi
    55

    Ringraziamenti
    5
    Ringraziato 1 volta in 1 Post
    Predefinito

    Ovviamente devi mettere il link http://www.nomesito.com/cartellacont.../registred.php, immagino che il link sia una final static String="link di prima";, vedi se funziona

    Inviato dal mio Galaxy Nexus usando Androidiani App

  4. #3
    Androidiano


    Registrato dal
    Mar 2014
    Messaggi
    55

    Ringraziamenti
    5
    Ringraziato 1 volta in 1 Post
    Predefinito

    Il file non se lo trova mica da solo mettendo la cartella, devi mettere proprio il percorso del file, ps:: se funziona passa i file

    Inviato dal mio Galaxy Nexus usando Androidiani App

  5. #4
    Baby Droid


    Registrato dal
    Oct 2012
    Messaggi
    26

    Ringraziamenti
    1
    Ringraziato 0 volte in 0 Posts
    Predefinito

    Ciao Xerxes ho fatto il parametro register.php lo passato nel file java di registred.java, quindi il percorso e corretto, il problema e che subito dopo questo errore mi da un errore Proxy
    prima errore in fase di registrazione con il server jav.io.FileNotFoundException:


    ecco il file ServerProxy, (premetto che l' app. server e su spazzio web aruba)
    import java.io.BufferedReader;
    import java.io.BufferedWriter;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.io.OutputStreamWriter;
    import java.net.HttpURLConnection;
    import java.net.URL;
    import java.net.URLEncoder;
    import java.security.cert.X509Certificate;
    import java.text.SimpleDateFormat;
    import java.util.HashMap;
    import java.util.Locale;
    import java.util.Map;

    import javax.net.ssl.HostnameVerifier;
    import javax.net.ssl.HttpsURLConnection;
    import javax.net.ssl.SSLContext;
    import javax.net.ssl.SSLSession;
    import javax.net.ssl.TrustManager;
    import javax.net.ssl.X509TrustManager;

    import android.util.Log;

    import com.google.gson.Gson;

    public class ServerProxy {

    static {
    TrustManager[] trustAllCerts = new TrustManager[] {
    new X509TrustManager() {
    public java.security.cert.X509Certificate[] getAcceptedIssuers() {
    return null;
    }

    public void checkClientTrusted(X509Certificate[] certs, String authType) {
    }

    public void checkServerTrusted(X509Certificate[] certs, String authType) {
    }
    }
    };
    try {
    SSLContext sc = SSLContext.getInstance("SSL");
    sc.init(null, trustAllCerts, new java.security.SecureRandom());
    HttpsURLConnection.setDefaultSSLSocketFactory(sc.g etSocketFactory());
    } catch (Throwable t) {
    }
    HostnameVerifier allHostsValid = new HostnameVerifier() {
    public boolean verify(String hostname, SSLSession session) {
    return true;
    }
    };
    HttpsURLConnection.setDefaultHostnameVerifier(allH ostsValid);
    }

    private static <T> T call(URL serverBaseUrl, String endpoint, Map<String, String> params, Class<T> responseClass) throws IOException {
    T response = null;
    URL url = new URL(serverBaseUrl, endpoint);
    BufferedWriter writer = null;
    BufferedReader reader = null;
    try {
    HttpURLConnection connection = (HttpURLConnection) url.openConnection();
    connection.setRequestMethod("POST");
    connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
    connection.setConnectTimeout(10000);
    connection.setReadTimeout(10000);
    connection.setUseCaches(false);
    connection.setDoInput(true);
    connection.setDoOutput(true);
    // Invia i parametri attraverso il writer.
    writer = new BufferedWriter(new OutputStreamWriter(connection.getOutputStream()));
    int paramCounter = 0;
    for (Map.Entry<String, String> entry : params.entrySet()) {
    if (paramCounter > 0) {
    writer.write('&');
    }
    writer.write(URLEncoder.encode(entry.getKey(), "UTF-8"));
    writer.write('=');
    writer.write(URLEncoder.encode(entry.getValue(), "UTF-8"));
    paramCounter++;
    }
    writer.flush();
    writer.close();
    writer = null;
    // Legge la risposta del server.
    reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
    Gson gson = new Gson();
    response = gson.fromJson(reader, responseClass);
    reader.close();
    reader = null;
    } finally {
    if (writer != null) {
    try {
    writer.close();
    } catch (Throwable t) {
    }
    }
    if (reader != null) {
    try {
    reader.close();
    } catch (Throwable t) {
    }
    }
    }
    return response;
    }

    public static String register(URL serverBaseUrl, String phoneNumber, String deviceId) throws IOException {
    Map<String, String> params = new HashMap<String, String>();
    params.put("phone_number", phoneNumber);
    params.put("device_type", "Android");
    params.put("device_id", deviceId);
    RegisterResponse response = call(serverBaseUrl, "register.php", params, RegisterResponse.class);
    if (response.code != 0) {
    throw new IOException("errore server: " + response.code + " " + response.description);
    }
    if (response.result == null || response.result.private_key == null) {
    throw new IOException("errore server: risposta non valida");
    }
    return response.result.private_key;
    }

    public static void send(URL serverBaseUrl, String privateKey, String senderPhoneNumber, String recipientPhoneNumber, String message) throws IOException, UnknownRecipientException {
    Map<String, String> params = new HashMap<String, String>();
    params.put("private_key", privateKey);
    params.put("phone_number", senderPhoneNumber);
    params.put("recipient", recipientPhoneNumber);
    params.put("message", message);
    SendResponse response = call(serverBaseUrl, "send.php", params, SendResponse.class);
    if (response.code == 4) {
    throw new UnknownRecipientException();
    }
    if (response.code != 0) {
    throw new IOException("errore server: " + response.code + " " + response.description);
    }
    }

    public static Message[] retrieve(URL serverBaseUrl, String privateKey, String phoneNumber) throws IOException {
    Map<String, String> params = new HashMap<String, String>();
    params.put("private_key", privateKey);
    params.put("phone_number", phoneNumber);
    RetrieveResponse response = call(serverBaseUrl, "retrieve.php", params, RetrieveResponse.class);
    if (response.code != 0) {
    throw new IOException("errore server: " + response.code + " " + response.description);
    }
    if (response.result == null || response.result.messages == null) {
    return new Message[0];
    }
    int size = response.result.messages.length;
    Message[] ret = new Message[size];
    for (int i = 0; i < size; i++) {
    ret[i] = new Message();
    ret[i].id = response.result.messages[i].id;
    ret[i].senderPhoneNumber = response.result.messages[i].sender;
    ret[i].recipientPhoneNumber = response.result.messages[i].recipient;
    ret[i].text = response.result.messages[i].message;
    try {
    ret[i].sentTimestamp = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss Z", Locale.US).parse(response.result.messages[i].ts_sent).getTime();
    } catch (Exception e) {
    Log.w("freem", "formato timestamp non valido in " + response.result.messages[i].ts_sent, e);
    ret[i].sentTimestamp = System.currentTimeMillis();
    }
    }
    return ret;
    }

    private static abstract class Response {
    public int code = -1;
    public String description = null;
    }

    private static class RegisterResult {
    public String private_key = null;
    }

    private static class RegisterResponse extends Response {
    public RegisterResult result;
    }

    private static class SendResponse extends Response {
    }

    private static class RetrieveResult_Message {
    public String id;
    public String sender;
    public String recipient;
    public String message;
    public String ts_sent;
    }

    private static class RetrieveResult {
    public RetrieveResult_Message[] messages;
    }

    private static class RetrieveResponse extends Response {
    public RetrieveResult result;
    }

    public static class UnknownRecipientException extends Exception {

    private static final long serialVersionUID = 1L;

    }

    public static class Message {
    public String id;
    public String senderPhoneNumber;
    public String recipientPhoneNumber;
    public String text;
    public long sentTimestamp;
    }

    }

  6. #5
    Baby Droid


    Registrato dal
    Oct 2012
    Messaggi
    26

    Ringraziamenti
    1
    Ringraziato 0 volte in 0 Posts
    Predefinito

    appena prima di questo errore c' è MMUMapper Error, fail to register MVA, unsupported format(0x5)

  7. #6
    Baby Droid


    Registrato dal
    Oct 2012
    Messaggi
    26

    Ringraziamenti
    1
    Ringraziato 0 volte in 0 Posts
    Predefinito

    RISOLTO !!! . il problema era che aruba ha troppe restrizioni . ho provato il tutto con xampp e ha funzionato.
    avevo questo dubbio, ma ora ho la certezza, grazie

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire risposte
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Torna su
Privacy Policy