Autore Topic: Chat Java - come avere/impostare Server dedicato  (Letto 653 volte)

Offline emainc

  • Nuovo arrivato
  • *
  • Post: 6
  • Respect: 0
    • Mostra profilo
Chat Java - come avere/impostare Server dedicato
« il: 19 Novembre 2016, 16:23:28 CET »
0
Ciao a tutti ragazzi,
necessito di un vostro cortese supporto.
Sto creando un'applicazione Android per smartphone nella quale dovrei inserire una semplice chat con tutti i suoi requisiti (ossia autentificazione, riconoscimento, stato online/offline eccetera). Adesso il mio problema non è a livello di codice ma di "architettura" diciamo, mi spiego meglio: necessito per la chat di un mio spazio server dedicato (nel codice andrò quindi a settare l'indirizzo ip del server e la porta per la connessione), ovviamente non potendone avere uno "in casa" vorrei affittarlo, come funziona? devo smanettare su internet e trovare un buon fornitore di server (quindi aziende di hosting) o altro?
Inoltre, prima di fare tutto ciò, potrei sviluppare la mia App e testarla facendo fungere "temporaneamente" il mio PC da Server?

Ciao a tutti e grazie anticipatamente per i vostri riscontri.

Ciao

Offline blackgin

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1387
  • Respect: +164
    • Google+
    • blackgins
    • blackginsoft
    • Mostra profilo
  • Dispositivo Android:
    Galaxy Nexus
  • Sistema operativo:
    Mac OSX 10.8
Re:Chat Java - come avere/impostare Server dedicato
« Risposta #1 il: 19 Novembre 2016, 17:25:28 CET »
0
Non ti conviene utilizzare una soluzione giá pronta come Firebase?
Postate il LogCat LogCat LogCat LogCat LogCat

Offline tonno16

  • Utente storico
  • *****
  • Post: 1227
  • Respect: +59
    • Mostra profilo
  • Dispositivo Android:
    moto g
  • Play Store ID:
    Diego Tonini
  • Sistema operativo:
    OpenSuse
Re:Chat Java - come avere/impostare Server dedicato
« Risposta #2 il: 19 Novembre 2016, 17:43:53 CET »
0
Esiste una cosa ancora più pronta di firebase. Esiste un servizio che ora non ricordo il nome che permette di avere una chat funzionante in tutto anche con file etc. In pratica la libreria è un app vera e propria che si appoggia su server già pronti grazie al servizio. Cerca integrate chat in android

Offline emainc

  • Nuovo arrivato
  • *
  • Post: 6
  • Respect: 0
    • Mostra profilo
Re:Chat Java - come avere/impostare Server dedicato
« Risposta #3 il: 20 Novembre 2016, 11:39:58 CET »
0
Ciao tonno16, blackgin, innanzitutto grazie per i vostri riscontri.
Firebas non lo conosco molto bene , sto approfondendo su internet, blackgin se puoi darmi qualche dettaglio in più te ne sarei grato.
Tonno16, ho cercato un pò su internet riguardo a ciò che mi hai suggerito, forse ti riferivi ad AreaDaemon?

Grazie ragazzi

Offline tonno16

  • Utente storico
  • *****
  • Post: 1227
  • Respect: +59
    • Mostra profilo
  • Dispositivo Android:
    moto g
  • Play Store ID:
    Diego Tonini
  • Sistema operativo:
    OpenSuse
Re:Chat Java - come avere/impostare Server dedicato
« Risposta #4 il: 20 Novembre 2016, 12:29:52 CET »
0
Allora. Puoi o usare un protocollo napo per le chat, ovvero XMPP. Puoi avvalerti di server gratis in giro per il web o fartene uno tuo. A me venne chiesto di realizzare una chat su Android. Usai XMPP. Ammetto che è abbastanza un casino ovviamente.
Oppure le soluzioni totalmente pronte come per esempio https://sendbird.com/. Ce ne sono altre che fanno la stessa cosa. C'è anche Applozic. Costa però 100 euro al mese o 80 se fai abbonamento annuale. Ti da 25k utenti. Quindi un utente ti costa relativamente poco. Tinei conto che hai una chat pronta per tutto. Leggermente configurabile in colori etc. Se poi ti impegni puoi stilizzare ciò che vuoi. Per avere 25k utenti in Firebase spendi molto meno, ma devi farti tutta l' architettura.

Guardati anche mqtt a sto punto

Offline blackgin

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1387
  • Respect: +164
    • Google+
    • blackgins
    • blackginsoft
    • Mostra profilo
  • Dispositivo Android:
    Galaxy Nexus
  • Sistema operativo:
    Mac OSX 10.8
Re:Chat Java - come avere/impostare Server dedicato
« Risposta #5 il: 20 Novembre 2016, 13:01:24 CET »
0
ma devi farti tutta l' architettura.
In che senso? Il database che offrono é realtime, quello che devi fare è solamente programmare il client Android (e web se ti serve).
Qua trovi una sessione del Google I/O di quest'anno in cui dimostrano l'utilizzo di Firebase proprio con una chat come esempio.
Postate il LogCat LogCat LogCat LogCat LogCat

Offline tonno16

  • Utente storico
  • *****
  • Post: 1227
  • Respect: +59
    • Mostra profilo
  • Dispositivo Android:
    moto g
  • Play Store ID:
    Diego Tonini
  • Sistema operativo:
    OpenSuse
Re:Chat Java - come avere/impostare Server dedicato
« Risposta #6 il: 20 Novembre 2016, 13:04:34 CET »
0
Per esempio devi creati un receiver. Devi gestire tutto il ciclo di vita dell' app. L'app e chiusa e ti arriva un messaggio. L'app è aperta e ti arriva un messaggio. L' app è aperta in background. Oppure il telefono è spento. Etc etc. Non sto dicendo che non si può fare

Offline emainc

  • Nuovo arrivato
  • *
  • Post: 6
  • Respect: 0
    • Mostra profilo
Re:Chat Java - come avere/impostare Server dedicato
« Risposta #7 il: 21 Novembre 2016, 09:49:30 CET »
0
Grazie ragazzi.
Cercherò di approfondire i vostri consigli e a breve tornerò sicuramente a "disturbarvi" perchè necessiterò di supporto ;-)

Offline emainc

  • Nuovo arrivato
  • *
  • Post: 6
  • Respect: 0
    • Mostra profilo
Re:Chat Java - come avere/impostare Server dedicato
« Risposta #8 il: 03 Dicembre 2016, 19:24:47 CET »
0
Buona sera ragazzi,
sto smanettando con il mio codice Java in Android Studio per la creazione di una semplice chat usando Firebas.
Sto impazzando perchè non riesco a risolvere il problema inerente al seguente codice:

public static void saveMessage(Message message, String convoId){
        Date date = message.getDate();
        String key = sDateFormat.format(date);
        HashMap<String, String> msg = new HashMap<>();
        msg.put(COLUMN_TEXT, message.getText());
        msg.put(COLUMN_SENDER,message.getSender());
        sRef.child(convoId).child(key).setValue(msg);
    }

Mi da errore nell'istruzione Date date = message.getDate(); dicendomi "Incompatible types. Required java.sql.Date.   Found: android.os.Bundle"

Il problema l'ho capito ma non riesco a risolverlo.
Potete gentilmente aiutarmi!??!?

Grazie 1000

Offline capitancooker

  • Utente junior
  • **
  • Post: 85
  • Marco
  • Respect: +7
    • Mostra profilo
  • Dispositivo Android:
    Nexus 5, Asus Zenpad S 8.0
  • Sistema operativo:
    macOS Sierra
Re:Chat Java - come avere/impostare Server dedicato
« Risposta #9 il: 03 Dicembre 2016, 19:53:15 CET »
0
Non so se può dipendere da questo, prova a sostituire import java.sql.Date con import java.util.Date

Ciao,
Marco
Se sbaglio, correggetemi.

Offline blackgin

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1387
  • Respect: +164
    • Google+
    • blackgins
    • blackginsoft
    • Mostra profilo
  • Dispositivo Android:
    Galaxy Nexus
  • Sistema operativo:
    Mac OSX 10.8
Re:Chat Java - come avere/impostare Server dedicato
« Risposta #10 il: 03 Dicembre 2016, 21:33:08 CET »
0
Buona sera ragazzi,
sto smanettando con il mio codice Java in Android Studio per la creazione di una semplice chat usando Firebas.
Sto impazzando perchè non riesco a risolvere il problema inerente al seguente codice:

public static void saveMessage(Message message, String convoId){
        Date date = message.getDate();
        String key = sDateFormat.format(date);
        HashMap<String, String> msg = new HashMap<>();
        msg.put(COLUMN_TEXT, message.getText());
        msg.put(COLUMN_SENDER,message.getSender());
        sRef.child(convoId).child(key).setValue(msg);
    }

Mi da errore nell'istruzione Date date = message.getDate(); dicendomi "Incompatible types. Required java.sql.Date.   Found: android.os.Bundle"

Il problema l'ho capito ma non riesco a risolverlo.
Potete gentilmente aiutarmi!??!?

Grazie 1000

Posta il codice della classe Message
Postate il LogCat LogCat LogCat LogCat LogCat

Offline emainc

  • Nuovo arrivato
  • *
  • Post: 6
  • Respect: 0
    • Mostra profilo
Re:Chat Java - come avere/impostare Server dedicato
« Risposta #11 il: 12 Dicembre 2016, 19:37:57 CET »
0
Ciao ragazzi,
poi sbattendoci la testa ho risolto. Adesso però ho un altro problema: per testare e prendere "confidenza" con Firebas sto sviluppando un piccolo programmino che potete trovare quì "https://www.youtube.com/watch?v=B1rlT5KQ0yE".
Ho effettuato tutti i vari step, ossia: su Firebas ho creato un nuovo progetto (inserendo nome, Nickname app, il Certificato SHA-1 per la firma di debug eccetera), inserito il file google-service.json in Android Studio, modificato i file build.gradle (sia a livello di project che di app) per utilizzare il plug-in e poi ho effettuato la sincronizzazione con Sync Now e fino a quì tutto ok, nessun errore.
Seguendo gli step mostrati nel link sopra citato (lo riporto di nuovo "https://www.youtube.com/watch?v=B1rlT5KQ0yE") sono arrivato praticamente alla fine della costruzione del programma, nel momento in cui devo testarlo però cliccando su "RUN" non si apre il solito "cellulare virtuale" sul quale poter testare l'applicazione (almeno questo mi aspettavo) ma vengono generate una serie di righe che riporto:

Executing external task 'signingReport'...
Configuration on demand is an incubating feature.
google-services plugin could not detect any version for com.google.android.gms or com.google.firebase, default version: 9.0.0 will be used.
please apply google-services plugin at the bottom of the build file.
Incremental java compilation is an incubating feature.
:app:signingReport
Variant: release
Config: none

So di essere un "neofita" di Firebas, quindi spero sia un problemino risolvibile con poco.
Grazie anticipatamente per il vostro supporto ragazzi!   ;-)


Offline tonno16

  • Utente storico
  • *****
  • Post: 1227
  • Respect: +59
    • Mostra profilo
  • Dispositivo Android:
    moto g
  • Play Store ID:
    Diego Tonini
  • Sistema operativo:
    OpenSuse
Re:Chat Java - come avere/impostare Server dedicato
« Risposta #12 il: 12 Dicembre 2016, 22:33:06 CET »
0
Seguendo la guida di firebase non ho mai avuto problemi

Offline juanito21

  • Nuovo arrivato
  • *
  • Post: 14
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    galaxy s2
  • Sistema operativo:
    4.1.2
Re:Chat Java - come avere/impostare Server dedicato
« Risposta #13 il: 13 Dicembre 2016, 01:06:09 CET »
0
Ciao ragazzi,
poi sbattendoci la testa ho risolto. Adesso però ho un altro problema: per testare e prendere "confidenza" con Firebas sto sviluppando un piccolo programmino che potete trovare quì "https://www.youtube.com/watch?v=B1rlT5KQ0yE".
Ho effettuato tutti i vari step, ossia: su Firebas ho creato un nuovo progetto (inserendo nome, Nickname app, il Certificato SHA-1 per la firma di debug eccetera), inserito il file google-service.json in Android Studio, modificato i file build.gradle (sia a livello di project che di app) per utilizzare il plug-in e poi ho effettuato la sincronizzazione con Sync Now e fino a quì tutto ok, nessun errore.
Seguendo gli step mostrati nel link sopra citato (lo riporto di nuovo "https://www.youtube.com/watch?v=B1rlT5KQ0yE") sono arrivato praticamente alla fine della costruzione del programma, nel momento in cui devo testarlo però cliccando su "RUN" non si apre il solito "cellulare virtuale" sul quale poter testare l'applicazione (almeno questo mi aspettavo) ma vengono generate una serie di righe che riporto:

Executing external task 'signingReport'...
Configuration on demand is an incubating feature.
google-services plugin could not detect any version for com.google.android.gms or com.google.firebase, default version: 9.0.0 will be used.
please apply google-services plugin at the bottom of the build file.
Incremental java compilation is an incubating feature.
:app:signingReport
Variant: release
Config: none

So di essere un "neofita" di Firebas, quindi spero sia un problemino risolvibile con poco.
Grazie anticipatamente per il vostro supporto ragazzi!   ;-)

Verifica ls versione di Firebase che stai utilizzando in caso aggiorna alla più recente nel file gradle

Offline emainc

  • Nuovo arrivato
  • *
  • Post: 6
  • Respect: 0
    • Mostra profilo
Re:Chat Java - come avere/impostare Server dedicato
« Risposta #14 il: 13 Dicembre 2016, 15:39:35 CET »
0
Ok proverò a fare così, grazie