Autore Topic: Consiglio su Servizio (creazione di un processo in background)  (Letto 742 volte)

Offline fratellonero

  • Nuovo arrivato
  • *
  • Post: 6
  • Respect: 0
    • Mostra profilo
Consiglio su Servizio (creazione di un processo in background)
« il: 21 Novembre 2013, 17:27:16 CET »
0
Ciao a tutti, vorrei se possibile chiarirmi alcuni dubbi sulla realizzazione di un piccolo progetto che sto portando avanti.
Vorrei realizzare un "servizio" (in realtà dovrebbe essere un processo in backgroud) al quale collegare una interfaccia grafica per la configurazione.
Il servizio dopo essere stato installato dovrebbe stare in backgroud e fare delle operazioni ogni "tot tempo" (ad esempio conoscere le coordinate tramite GPS), inoltre ad ogni riavvio del dispositivo il servizio dovrebbe riavviarsi in automatico.

Sto utilizzando il seguente schema per portare a termine il mio progetto:
https://drive.google.com/file/d/0B_rTlhiLFGK0azg0RFJKUks3a1E/edit?usp=sharing

Sintetizzando:
1)Avvio una Activity;
2)L'Activity avvia nel seguente modo:
Codice (Java): [Seleziona]
PendingIntent ....
AlarmManager alarm ....
alarm.setRepeating .....
il servizio ("che in realtà dovrebbe essere più un processo in backgroud visto che non necessita di comunicare con nessun altro").

Mi chiedo se il mio modo di procedere sia quello corretto, credo che mi stia sfuggendo una qualche altra possibilità più corretta e lineare.

Attendo vostre risposte e vi ringrazio anticipatamente.
« Ultima modifica: 21 Novembre 2013, 23:23:18 CET da fratellonero »

Offline Crastino3

  • Nuovo arrivato
  • *
  • Post: 3
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    samsung galaxy wonder
  • Sistema operativo:
    Debian 7.0
Re:Consiglio su Servizio (creazione di un processo in background)
« Risposta #1 il: 09 Dicembre 2013, 22:57:26 CET »
0
Ciao,

ho un problema simile al tuo nel senso che devo creare un servizio che funzioni in background e come te non ho ben chiaro di quale sia il metodo più utile e semplice da utilizzare.
Avevo letto che esiste IntentService che è un service più semplice.
Te alla fine come hai risolto?

Offline fratellonero

  • Nuovo arrivato
  • *
  • Post: 6
  • Respect: 0
    • Mostra profilo
Re:Consiglio su Servizio (creazione di un processo in background)
« Risposta #2 il: 10 Dicembre 2013, 06:56:08 CET »
0
Ciao Crastino3,
pensavo che la mia discussione non interessasse a nessuno  :-P e che fossi l'unico ad avere dei dubbi su questo argomento.

Te alla fine come hai risolto?

Io alla fine ho lasciato tutto come era, visto che cmq funziona tutto bene almeno per questa prima fase di test del mio progetto.

Sintetizzando:
1)Avvio una Activity;
2)L'Activity avvia nel seguente modo:
Codice (Java): [Seleziona]
PendingIntent ....
AlarmManager alarm ....
alarm.setRepeating .....

Offline Nicola_D

  • Utente storico
  • *****
  • Post: 2479
  • SBAGLIATO!
  • Respect: +323
    • Github
    • Google+
    • nicoladorigatti
    • Mostra profilo
  • Dispositivo Android:
    Nexus 6p, Nexus 4, Nexus S, Nexus 7(2012)
  • Sistema operativo:
    Windows 7
Re:Consiglio su Servizio (creazione di un processo in background)
« Risposta #3 il: 10 Dicembre 2013, 10:10:40 CET »
0
Io ho appena finito di fare un'app che ha:
1 - BroadcastReceiver di BOOT_COMPLETED
2 - Service che ogni 30 minuti pesca i dati da db e li invia via HTTP ad un service
3 - Service che avvia in ascolto una socket
4 - Activity opzionale per l'avvio manuale dei servizi.

per il punto 1, il BR riceve il broadcast e avvia i due servizi.
per il punto 2 ho usato nello start service l'alarm manager con pending intent, facendo attenzione a non riavviare ogni volta il repeating, ma solo se questo non è mai stato impostato.
per il punto 3 non servono dettagli
per il punto 4, alla pressione di un bottone avvia i servizi.
Puoi opzionalmente far catturare al tuo broadcast receiver altri broadcast se necessario.
IMPORTANTE:NON RISPONDO A PROBLEMI VIA MESSAGGIO PRIVATO
LOGCAT: Non sai cos'è? -> Android Debug Bridge | Android Developers
               Dov'è in Eclipse? -> Window -> Open Prospective -> DDMS e guarda in basso!
[Obbligatorio] Logcat, questo sconosciuto! (Gruppo AndDev.it LOGTFO) - Android Developers Italia