Autore Topic: Android e il kill di servizi (e app..)  (Letto 1060 volte)

Offline vicvondoom

  • Utente junior
  • **
  • Post: 71
  • Respect: +4
    • Mostra profilo
    • vicvondoom
  • Dispositivo Android:
    Sony XPeria U
  • Play Store ID:
    Orlando Davide
  • Sistema operativo:
    Windows 8
Android e il kill di servizi (e app..)
« il: 09 Settembre 2010, 09:52:05 CEST »
0
Mi sto tormentando con un problemone...
Dunque, e per le app che vengano killate se inattive mi sta anche bene (funzionasse così anche a Montecitorio :) ), ma per i servizi?
Ho scritto un paio di app contenenti alcune activity e un service che deve girare in backgroud.. solo che ogni tanto, dopo una giornata di inattività, non trovo più l'app, e va bene, ma anche il servizio! Ma Android non dovrebbe killarli no?
O devo fare qualcosa di particolare (disaccoppiarli dall'app, come? qualche flag all'avvio, quale?)

Mi sembra proprio strano che Android killi i servizi, vi pare?
"Non c'è cattivo più cattivo di un buono quando diventa cattivo!" Bud Spencer in 'Chi trova un amico trova un tesoro'.

Offline MarcoDuff

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1073
  • Respect: +202
    • Google+
    • marcoduff
    • Mostra profilo
    • MarcoDuff's Blog
  • Dispositivo Android:
    Samsung Galaxy Nexus
  • Play Store ID:
    MarcoDuff
  • Sistema operativo:
    Windows 7
Re:Android e il kill di servizi (e app..)
« Risposta #1 il: 09 Settembre 2010, 10:06:07 CEST »
0
Dipende come hai fatto partire il servizio (startService o bind) e dalla priorità che hai dato al servizio! ;)

Application Fundamentals | Android Developers

Porta il servizio al livello foreground process e non verrà mai distrutto! ;)

Offline vicvondoom

  • Utente junior
  • **
  • Post: 71
  • Respect: +4
    • Mostra profilo
    • vicvondoom
  • Dispositivo Android:
    Sony XPeria U
  • Play Store ID:
    Orlando Davide
  • Sistema operativo:
    Windows 8
Re:Android e il kill di servizi (e app..)
« Risposta #2 il: 09 Settembre 2010, 10:22:30 CEST »
0
Lo faccio partire con start(), niente bind e non sò come dare la priorità al servizio!
Come lo porto come foreground? startForeground() mi ricordo che è deprecata o sbaglio?
"Non c'è cattivo più cattivo di un buono quando diventa cattivo!" Bud Spencer in 'Chi trova un amico trova un tesoro'.

Offline MarcoDuff

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1073
  • Respect: +202
    • Google+
    • marcoduff
    • Mostra profilo
    • MarcoDuff's Blog
  • Dispositivo Android:
    Samsung Galaxy Nexus
  • Play Store ID:
    MarcoDuff
  • Sistema operativo:
    Windows 7
Re:Android e il kill di servizi (e app..)
« Risposta #3 il: 09 Settembre 2010, 11:08:05 CEST »
0

Offline vicvondoom

  • Utente junior
  • **
  • Post: 71
  • Respect: +4
    • Mostra profilo
    • vicvondoom
  • Dispositivo Android:
    Sony XPeria U
  • Play Store ID:
    Orlando Davide
  • Sistema operativo:
    Windows 8
Re:Android e il kill di servizi (e app..)
« Risposta #4 il: 10 Settembre 2010, 12:21:11 CEST »
0
Uhm ok, quindi con questo sistema se la mia app è sotto a Android 2.0 =>Android 2.2, funziona, invece se c'è un Android 1.6 non si può sapere se verà killata o meno.. è corretto?
"Non c'è cattivo più cattivo di un buono quando diventa cattivo!" Bud Spencer in 'Chi trova un amico trova un tesoro'.

Offline MarcoDuff

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1073
  • Respect: +202
    • Google+
    • marcoduff
    • Mostra profilo
    • MarcoDuff's Blog
  • Dispositivo Android:
    Samsung Galaxy Nexus
  • Play Store ID:
    MarcoDuff
  • Sistema operativo:
    Windows 7
Re:Android e il kill di servizi (e app..)
« Risposta #5 il: 14 Settembre 2010, 17:38:01 CEST »
0
No, sono due codici diversi perché il metodo startForeground è stato inserito dalla 2.0. Quindi se vuoi una compatibilità con versioni <2.0 usi quel quel codice, se non ti interessa la compatibilità ti basta chiamare quel metodo! ;)

Offline vicvondoom

  • Utente junior
  • **
  • Post: 71
  • Respect: +4
    • Mostra profilo
    • vicvondoom
  • Dispositivo Android:
    Sony XPeria U
  • Play Store ID:
    Orlando Davide
  • Sistema operativo:
    Windows 8
Re:Android e il kill di servizi (e app..)
« Risposta #6 il: 14 Settembre 2010, 17:56:35 CEST »
0
Chiarissimo, grazie mille!
"Non c'è cattivo più cattivo di un buono quando diventa cattivo!" Bud Spencer in 'Chi trova un amico trova un tesoro'.