Scrivere software per dispositivi mobili è una delle abilità più interessanti che può farti trovare un lavoro. Con l'intero ecosistema guidato da due grandi piattaforme, ovvero iOS e Android, è davvero il momento migliore per essere uno sviluppatore.
Supponendo che tu abbia già una certa esperienza di programmazione alle spalle, lo sviluppo di app non sarà travolgente per te. E sarà davvero un'esperienza di apprendimento, lo dico per esperienza personale, imparare a costruire su una piattaforma apre la mente a un modo di pensare completamente nuovo. Perché ora non stai solo gestendo ciò che sta accadendo in primo piano e in background della tua app, stai anche gestendo i suoi diversi stati invisibili e assicurandoti che sia un "buon cittadino" dell'ecosistema che è il dispositivo del tuo utente.
Questo articolo fa parte di una serie in corso qui a TechLila in cui ci concentreremo su come puoi essere uno sviluppatore migliore spendendo tempo a costruire esperienze invece di spaccarti la testa pensando a problemi che sono già stati risolti elegantemente (vengo a quello in appena un po'). Si noti tuttavia che questa serie non è per principianti, avremo qualcosa in serbo per te abbastanza presto. Questa serie si concentra sull'aiutare gli sviluppatori che hanno già una buona dose di esperienza in Android.
Questo articolo è il primo di una serie di articoli che pubblicheremo per aiutare gli sviluppatori Android ad aggiungere funzionalità chiave "coinvolgenti" alle loro app sfruttando l'infrastruttura esistente invece di preoccuparsi di costruirla da zero.
Notifiche push su Android
In questo primo, ci concentreremo sulle notifiche push. Le notifiche push rientrano nella fascia di impegno dell'integrazione del software.
Va bene, quindi supponi di aver appena completato la creazione della prossima app epica che è totalmente killer e sei estremamente ottimista sul suo futuro. Nei primi giorni, l'app sta andando molto bene. La stabilità è di prim'ordine e i download continuano ad aumentare e non puoi tenere gli occhi sulle metriche. Ma abbastanza presto inizi a notare uno schema molto strano nell'utilizzo della tua app. Mentre riesce ad attrarre nuovi utenti a se stesso, ma sta perdendo gli utenti esistenti. La ritenzione sta semplicemente calando ogni giorno. Diventi tutto ansioso preoccupandoti di cosa fare ora, pensavi che alla gente sarebbe piaciuto davvero. Ma non funziona niente.
Se ti trovi in una situazione del genere, questo post potrebbe aiutarti molto. Il problema non è la tua app. È il telefono dell'utente. Lasciatemi spiegare. La tua idea è un killer e se sei sicuro della sua fattibilità, tutto ciò di cui dovresti preoccuparti è risolvere il problema della ritenzione. Quindi sì, sono il tuo utente e ho un tipico telefono Android. Con una memoria di 32 GB decente e grazie a Reliance Jio, una connessione Internet abbastanza stabile. Cosa devo fare? Vado ed esploro cosa c'è là fuori da consumare. In questo processo, ho appena riempito il mio dispositivo con centinaia di app e anche se è vero che mi è piaciuta molto la tua app e l'ho trovata interessante, onestamente a questo punto me ne sono dimenticato. Esiste ancora sul mio telefono ma non lo noto molto bene tra tutte le altre app che ci sono.
Il problema qui è che la tua app non è abbastanza coinvolgente. Ricorda solo agli utenti che è lì seduto sul proprio dispositivo in attesa che lo usino e tra tutte le app sbalorditive come Facebook e WhatsApp che bombardano costantemente i tuoi utenti con notifiche è molto probabile che la tua app si perderà tra la folla a meno che non risolva il problema problema di fidanzamento.
Come aggiungere notifiche push al tuo progetto Android
Push Notification è un ottimo meccanismo leggero per risolvere il problema e questo articolo ti mostrerà come implementarlo nei tuoi progetti.
Useremo Bluemix di IBM per l'integrazione delle Notifiche Push nelle nostre app. Ci sono un sacco di altri fornitori che ti daranno un SDK da integrare nel progetto e svilupparlo. Ma ci sono un paio di ragioni chiave per cui scelgo Bluemix rispetto ad altri.
- First Bluemix offre un sacco di altre funzionalità che posso aggiungere a un progetto esistente senza problemi (le notifiche push sono solo una di quelle offerte). La loro console semplifica la gestione di tutte le loro integrazioni.
- In secondo luogo, se sei un principiante e provi qualsiasi altro SDK, molto probabilmente rimarrai bloccato da qualche parte (l'ho fatto). Con Bluemix non è così poiché la documentazione e le guide teoriche sono fantastiche.
- Il terzo e uno dei motivi più importanti per scegliere Bluemix è che anche se è un servizio a pagamento, viene fornito con una prova di 30 giorni in modo da poter giocare con tutte le loro offerte prima di decidere di impegnarsi nella loro piattaforma e investirci. È sempre una buona pratica testare alcune cose prima di investire in esse.
- In quarto luogo, e questo è più simile a brownie che indica IBM, c'è un senso di familiarità e fiducia che gli sviluppatori hanno associato a IBM come azienda. Stanno facendo un lavoro straordinario nell'area tecnologica da un po' di tempo ormai e conoscono bene le loro cose, quindi puoi saltare la nave senza preoccupazioni
Per procedere ulteriormente con questa lezione, dobbiamo prima assicurarci di essere tutti sulla stessa pagina, quindi prima di immergerci ulteriormente in questo post assicurati di esserti registrato a Bluemix (se non lo hai già fatto) e di aver effettuato l'accesso alla console.
Questo articolo è incentrato su Android, quindi presumo da parte tua una certa familiarità con la scrittura di app per Android. Bene, cominciamo.
Passaggio 1: la configurazione iniziale
Apri un progetto esistente in Android Studio in cui desideri integrare le notifiche push. Puoi anche andare avanti e creare un nuovo progetto solo per testare le cose. Se stai aprendo un progetto esistente, assicurati di passare a un nuovo ramo prima di fare qualsiasi aggiunta al tuo progetto. Una volta terminato questo passaggio, crea il progetto e distribuiscilo sul tuo telefono/emulatore. Questo dimostrerà solo che tutto funziona come previsto e che siamo a posto.
Passaggio 2: recupera la chiave API di Firebase Cloud Messaging
Bluemix sfrutta Google Cloud Messaging per inviare notifiche push downstream alla tua app. Prendendo il controllo del tuo progetto Firebase Cloud Messaging (GCM) ti toglie solo un enorme fastidio dalle mani per impostare e configurare le cose per te. Vai su console.firebase.google.com e accedi utilizzando un account Google, quindi segui i passaggi seguenti
- Crea un nuovo progetto.
- Dagli un nome.
- Una volta configurato, vai su Impostazioni progetto.
- Fare clic su Messaggistica cloud.
- copiare il Chiave API del server e la identità del mittente come mostrato nello screenshot qui sotto.
- Dopo aver completato i passaggi precedenti, procedi ulteriormente e aggiungi Firebase al tuo progetto Android. Questo passaggio comporta l'inserimento del nome del pacchetto del progetto e altri dettagli e quindi il download del "servizi-google.json" file.

NOTA: È importante completare correttamente questo passaggio affinché i passaggi successivi funzionino correttamente. Assicurati che la tua app sia configurata e che il file "google-services.json" sia inserito nel tuo progetto.
Passaggio 1: registra l'app

Passaggio 2: scarica il file di configurazione

Passaggio 3: aggiungi l'SDK Firebase

Assicurati di eseguire il tuo progetto in questa fase solo per vedere se tutto funziona correttamente. Se tutto è a posto, procedere al passaggio successivo.
Passaggio 3: configurare un servizio Bluemix
- Vai alla tua console Bluemix.
- Apri il tuo catalogo Bluemix e fai clic sull'istanza del servizio IBM Push Notifications for Bluemix che hai creato.
- Clicca su Gestisci e poi vai su Configura.
- Seleziona Cellulare.
- Ora inserisci le credenziali che hai appena copiato nel passaggio precedente qui. Aggiorna il GCM/FCM Spingere la scheda Credenziali con il ID mittente/Numero progetto o API Key.
- Premi Salva.
Passaggio 4: inviare una spinta!
- Bene, abbiamo quasi finito. Distribuisci la tua app sul tuo telefono/emulatore e ora vai alla tua console.
- Seleziona Invia notifica.
- Configura il tuo messaggio in questa sezione.

- Una volta fatto tutto, premi Invia e vai al tuo dispositivo.

Bluemix ha alcune opzioni aggiuntive per Android secondo la loro documentazione. Puoi configurare ampiamente la tua notifica. Ecco le opzioni (direttamente dai loro documenti):
- Tasto Comprimi: Le chiavi di compressione sono allegate alle notifiche. Se più notifiche arrivano in sequenza con la stessa chiave di compressione quando il dispositivo è offline, vengono compresse. Quando un dispositivo è online, riceve notifiche dal server FCM/GCM e visualizza solo l'ultima notifica con la stessa chiave di compressione. Se la chiave di compressione non è impostata, sia il nuovo che il vecchio messaggio vengono archiviati per la consegna futura.
- Suono: Indica un clip audio da riprodurre alla ricezione di una notifica. Supporta l'impostazione predefinita o il nome di una risorsa audio inclusa nell'app.
- Icona: Specificare il nome dell'icona da visualizzare per la notifica. Assicurati di aver impacchettato l'icona nel
res/drawable
cartella, con l'applicazione client.
- Priorità: Specifica le opzioni per assegnare la priorità di consegna ai messaggi.
- Una priorità
high
ormax
risulterà in una notifica heads-up.
- Una priorità
low
ordefault
non aprirà le connessioni di rete su un dispositivo in sospensione.
- Una priorità
min
sarà una notifica silenziosa.
- Una priorità
- Visibilità: Puoi scegliere di impostare l'opzione di visibilità delle notifiche su una delle due
public
orprivate
.- La
private
L'opzione limita la visualizzazione pubblica e puoi scegliere di abilitarla se il tuo dispositivo è protetto con un pin o una sequenza e l'impostazione di notifica è impostata su Nascondi contenuti di notifica sensibili. Quando la visibilità è impostata suprivate
, unredact
campo deve essere menzionato. Solo il contenuto specificato nelredact
campo verrà visualizzato su una schermata bloccata in modo sicuro sul dispositivo.
- La
public
opzione renderebbe le notifiche leggibili liberamente.
- La
- Tempo di vivere: Questo valore è impostato in secondi. Se questo parametro non viene specificato, il server FCM/GCM archivia il messaggio per quattro settimane e tenterà di consegnarlo. La validità scade dopo quattro settimane. L'intervallo di valori possibile è compreso tra 0 e 2,419,200 secondi.
- Ritardo quando inattivo: Puoi impostarlo su uno dei seguenti valori:
True
indica al server FCM/GCM di non recapitare la notifica se il dispositivo è inattivo.
False
garantisce la consegna delle notifiche anche se il dispositivo è inattivo.
- Sync: Impostando questa opzione su
true
, le notifiche su tutti i tuoi dispositivi registrati sono sincronizzate. Se l'utente con un nome utente ha più dispositivi con la stessa applicazione installata, la lettura della notifica su un dispositivo garantisce l'eliminazione delle notifiche negli altri dispositivi. Affinché questa opzione funzioni, devi assicurarti di essere registrato al servizio di notifiche push con userId.
- Carico aggiuntivo: Specifica i valori del payload personalizzato per le tue notifiche.
- Notifica espandibile: Ciò fornisce ai clienti un'opzione per espandere una notifica con più informazioni, mentre una notifica di base sarebbe visibile con la notifica compressa. Sono supportate le seguenti opzioni:
- Notifiche con immagini grandi: puoi scegliere di includere un'immagine quando la notifica viene espansa. Assicurati di fornire un testo del titolo e un URL per l'immagine.
- Notifiche di testo grande: puoi scegliere di includere testo aggiuntivo con un titolo. Assicurati che il messaggio Big Text e le informazioni sul testo del titolo siano fornite.
- Notifiche stile Posta in arrivo: puoi inviare la notifica con lo stile di una notifica Posta in arrivo. Fornisci un testo del titolo e fornisci il messaggio in righe.
Conclusione
Questo è tutto! proprio così, imposti le notifiche push nella tua app in quattro semplici passaggi senza doverti preoccupare di procurarti un server e preoccuparti di complessità inutili. Ecco come diventa facile sviluppare con IBM Bluemix. La notifica push è solo una delle loro offerte. Offrono database e API Watson tra i tanti. E poiché la console Bluemix collega tutto insieme, non è necessario continuare a mischiare tra i servizi. È tutto sotto lo stesso tetto. Spero che questo articolo ti abbia aiutato a imparare qualcosa di nuovo e se sei interessato a imparare più cose come queste, ti incoraggio vivamente a provare Bluemix.
Marina
Hai condiviso alcune informazioni importanti qui. Felice di leggere il tuo blog.
Suraj padmasali
Bella guida passo passo, facile da capire! Mi ha aiutato molto!
Emma
Bell'articolo. Adoro i tuoi suggerimenti che hai fornito passo dopo passo.