Sto lavorando su un'app Android. Ci saranno due tipi di Utenti: Amministratore e Cliente. Voglio solo fare in modo che l'amministratore pubblichi alcune notifiche in testo normale e che vengano notificate ai clienti. La domanda è: che cosa dovrei usare per trasferire le notifiche da Admin a Client. Ho letto da qualche parte che è possibile con l'aiuto di Google App Engine e Google Cloud Messaging (GCM), ma è molto complesso lavorare con Google App Engine. C'è qualche opzione migliore che posso usare?Notifica di passaggio da Amministratore a Cliente
risposta
Se solo, la vostra preoccupazione è che non si vuole indulgere alla programmazione lato server e ancora voglia di ricevere qualche stringa nella vostra applicazione, come notifica push, è possibile provare ed esplorare questa:
È possibile utilizzare il servizio Amazon S3
. Vai qui per ulteriori informazioni: http://aws.amazon.com/s3/
Google App Engine è molto semplice se leggi il step-by-step guide.
È necessario installare maven
: daini this COME e poi leggere la guida di Google e, con un po 'di taglia e incolla nel pom.xml
, e 3 classi sarete in grado di scrivere qualche servizio web REST in 4 ore!
L'ho fatto qualche settimana fa e la cosa complessa era generare l'ID O-AUTH per l'autenticazione utente automatica! Alla fine sarai in grado di generare anche un sottile client Android per utilizzare il tuo servizio!
Se conosci java, tutto questo sarà semplice!
Questo è un semplice servizio web con il motore app:
@Api(
name = "helloworld",
version = "v1",
scopes = {Constants.EMAIL_SCOPE},
clientIds = {Constants.WEB_CLIENT_ID, Constants.ANDROID_CLIENT_ID, Constants.API_EXPLORER_CLIENT_ID},
audiences = {Constants.ANDROID_AUDIENCE}
)
public class Greetings {
public static ArrayList<HelloGreeting> greetings = new ArrayList<HelloGreeting>();
static {
greetings.add(new HelloGreeting("ciao world!"));
greetings.add(new HelloGreeting("addio world!"));
}
public HelloGreeting getGreeting(@Named("id") Integer id) {
return greetings.get(id);
}
}
È una scelta migliore di Java? –
Stai utilizzando java per l'app giusto? Quindi usalo ovunque: D Althoug puoi scrivere il tuo backend in python o php (ma non ho provato) –
Ma non ho lavorato con Servlet o alcun tipo di programmazione lato server .. Dove dovrei iniziare ?? –
penso che la scelta migliore che hai è davvero Google Cloud Messages
. Tieni presente che qualsiasi cosa tu implementi, dovrà essere molto simile ad essa, quindi perché reinventare la ruota?
Se non si desidera utilizzare questo, ci sono un paio di altre possibilità che mi vengono in mente (anche se, come ho detto, infine, che emulano GCM
's comportamento):
Implementazione a
Socket
in ascolto sul lato client. In questo modo, prima dovresti assicurarti che ogni client che si connette abbia bisogno di inviarti in qualche modo (ad esempio, una richiestaHTTP POST
) e l'indirizzoIP
, perché avrai bisogno di sapere dove connetterti. In questo modo, devi connetterti a ciascun dispositivo ogni volta che desideri inviare un avviso, inviare il messaggio tramite loSocket
e gestire i timeout (ad esempio, se provo a recapitare un messaggio e la connessione viene rifiutata per X volte, potrei considerarlo come il client ha disconnesso).Implementazione di una "scheda" centralizzata. Con questo approccio, i client si collegano a una bacheca centralizzata (ad esempio un sito
HTTP
), dicono il polling ogni 30 secondi e mostrano solo i nuovi messaggi. In questo modo avresti bisogno di mantenere il controllo dei messaggi già mostrati e mostrare solo quelli nuovi. Lo svantaggio di questo approccio è che inizialmente dovrebbe essere accessibile a chiunque (anche se non sta utilizzando la tua app), ma è possibile implementare alcune misure di sicurezza aggiuntive per evitarlo (ad esempio, consentire solo i client che si sono registrati inviare unHTTP POST
al server remoto), altrimenti reindirizzare a una pagina di errore o restituire un errore430 Forbidden
.
Se finalmente si vuole dare una prova di GCM
(che è più facile di quanto si possa immaginare), ho scritto una risposta un tempo fa che riassume ad una guida passo-passo che cosa fare per la sua attuazione .
App Engine di Google è perfetto per il vostro requisito come le notifiche GCM spinta bisogno di un qualche tipo di server. Per un'alternativa puoi provare anche a esplorare Parse SDK.
- 1. Magento - Verifica se un amministratore e un cliente sono connessi
- 2. Utente, cliente, account amministratore in 3 diverse tabelle?
- 3. Passaggio da JSON a WebService
- 4. Passaggio da JQuery a RightJS
- 5. Passaggio da InstallShield a WiX
- 6. Passaggio da contenitore a file
- 7. Passaggio da menuSubItems a shinyDashboard
- 8. Passaggio da servlet a JSP
- 9. Passaggio da multiprocessing a threading
- 10. Passaggio da .NET a Java?
- 11. Passaggio da C# a VB.NET
- 12. Passaggio da Arg a Clojure da Java
- 13. eventi di passaggio da erlang a Clojure
- 14. Passaggio di dati da javascript a Flask
- 15. Passaggio di variabili da pallone a javascript
- 16. Passaggio da Entity Framework a NHibernate
- 17. Passaggio da MySQL a Cassandra - Pro/Contro?
- 18. Passaggio da ProcessThread a un thread gestito
- 19. passaggio adoconnection da vba a delphi
- 20. Passaggio da AndEngine a libgdx - cosa sapere?
- 21. Passaggio da Internet Explorer a Microsoft Edge
- 22. Amministratore Sonata - classe amministratore figlio
- 23. Passaggio da EXE autonomo a Windows Service
- 24. Passaggio da Windows Form a Web Form
- 25. Passaggio da un'attività a successiva su Android
- 26. Passaggio da Visual Sourcesafe a Mercurial
- 27. Passaggio da .NET a sviluppo Win32
- 28. Python: passaggio da optparse a argparse
- 29. Passaggio da Wiris http a https
- 30. JMS - Passaggio da uno a più utenti
Non so da dove cominciare. Non ho ancora eseguito alcuna programmazione sul lato server, vorresti indicarmi da dove cominciare. –