2013-01-14 4 views
7

Nella mia app Android che sto sviluppando, vorrei poter inviare notifiche al telefono dell'utente a seconda della loro posizione. Ad esempio, un utente riceve notifiche per offerte speciali presso ristoranti che sono locali nella posizione corrente.Invia notifiche in base alla posizione degli utenti

Mi piacerebbe sapere il modo migliore per farlo? (Non avere il codice, solo la struttura generale di come farlo).

ho pensato a due possibili modi:

Way 1:

1) hanno l'app posizione dell'utente e segnalarlo al server ogni 5 minuti. 2) Se l'utente si trova nel raggio impostato del luogo, inviare loro la notifica.

Way 2:

1) Inviare le notifiche e utilizzare le applicazioni in onda metodo ricevitore/s per filtrare e visualizzare solo le notifiche per gli utenti nelle aree corrette. Entrambi sembrano terribilmente inefficienti, in quanto 1 fa affidamento su un servizio costantemente in esecuzione e il modo 2 invia notifiche a tutti gli utenti dell'app e in quanto le notifiche saranno molto specifiche, quasi il 100% del tempo in cui la notifica non verrà essere rilevante per l'utente (e quindi non mostrato).

Ho già scritto il codice GCM e posso anche ottenere la posizione degli utenti, ho solo bisogno di un modo per collegarli.

Spero di aver chiarito la mia domanda.

+0

cosa hai deciso alla fine? –

risposta

5

Che ne dici di 'Way 1.5' (una combinazione di 1 e 2)?

È possibile prendere il percorso dell'utente e inviarlo al servizio. Risponderà con una notifica utilizzando un intervallo ampio (ad es. In tutta la città). L'applicazione mostrerà solo la notifica per il campo effettivo.

Ma, l'applicazione conosce le notifiche per l'ampia gamma, quindi se gli utenti si muove, l'applicazione è in grado di mostrare nuova notifica (all'interno della vasta gamma), senza la connessione al servizio.

Alcune riflessioni aggiuntive:

  • Se l'utente lascia l'ampio spettro, l'applicazione può connettersi automaticamente per il vostro servizio di nuovo per richiedere un nuovo lotto di notifiche.
  • È possibile configurare l'ampia gamma configurabile, in modo che l'utente possa preferire molte comunicazioni o una gamma più ampia.
  • A seconda della velocità dell'utente (ad es. Se è in auto o in marcia), è possibile regolare l'ampia gamma di notifiche.
+1

"Se l'utente lascia la vasta gamma" - come può il servizio capire questo? una pinta centrale e un raggio dal server e quindi controllare se è ancora all'interno del cerchio di volta in volta? –

+0

Il servizio potrebbe inviare questi dettagli (ad esempio punto centrale e raggio) insieme alle altre informazioni, in modo che l'applicazione possa verificare se è necessario un aggiornamento o meno. Non c'è bisogno di disturbare il servizio con questo! – Veger