Italian App sempre attiva [Risolto]

luciano deri

Active Member
Licensed User
Longtime User
C'è un modo, probabilmente tramite un servizio, di impedire che una app venga chiusa?
Lo scopo sarebbe avviare la App automaticamente all'accensione del dispositivo, e nel caso sia chiusa riparta automaticamente.
Grazie.
 

imgsimonebiliato

Well-Known Member
Licensed User
Longtime User
Quoto che serve anche a me
 

imgsimonebiliato

Well-Known Member
Licensed User
Longtime User
Come faccio a capire se l'app sta ancora funzionando, una volta riavviato il dispositivo?
 

imgsimonebiliato

Well-Known Member
Licensed User
Longtime User
Ho guardato in tutto il sito.
L'esempio di @cimperia non credo valga molto, perchè comunque qualcosa deve partire prima di controllare se esiste il file (dico guardando l'esempio)
Lo sticky_service non è utile perchè non viene ricreato.

Qualcuno c'è riuscito?
 

LucaMs

Expert
Licensed User
Longtime User
Metto bocca anche se non dovrei perché non ci ho mai trafficato.

I servizi hanno l'attributo #StartAtBoot, ovvero impostando questa a True il servizio si avvia all'accensione del dispositivo, penso, no?
Perché non è sufficiente, secondo voi?
 

luciano deri

Active Member
Licensed User
Longtime User
Così avvi il servizio che avvia la app, l'esempio detto "kiosk" ha anche la funzione che in base a un timer controlla se la app è ancora attiva e nel caso non lo fosse la fa ripartire. Non ho trovato problemi.
 

Vitt61

Member
Licensed User
Longtime User
Metto bocca anche se non dovrei perché non ci ho mai trafficato.

I servizi hanno l'attributo #StartAtBoot, ovvero impostando questa a True il servizio si avvia all'accensione del dispositivo, penso, no?
Perché non è sufficiente, secondo voi?

Con "#StartAtBoot: true" si avvierà automaticamente la Sub Service_Start con dentro la funzione che si desidera. nel caso si voglia far partire l'applicazione:
StartActivity ("Main")
L'accensione del dispositivo si avvia l'applicazione, ruota correttamente lo schermo e resta in Stanby sino a quando non lo si sblocca ...
 

LucaMs

Expert
Licensed User
Longtime User
Ho dato un'occhiata al volo adesso a quel chiosco che nemmeno vende gelati :p

A quanto pare esso non dovrebbe servire a mantenere in vita l'app ma addirittura ad impedire che si possano usare altre app oltre a quella che utilizza questo kiosk,
mentre l'obiettivo di Luciano è:
Lo scopo sarebbe avviare la App automaticamente all'accensione del dispositivo, e nel caso sia chiusa riparta automaticamente.


Quindi, usare uno Sticky Service con avvio al boot dovrebbe funzionare ed essere sufficiente, penso.
 

luciano deri

Active Member
Licensed User
Longtime User
In realtà l'obbiettivo è esattamente quello di dedicare il dispositivo interamente alla mia applicazione, è uno strumento di lavoro, e si vuole impedire all'utilizzatore di usarlo in modo improprio.
 

imgsimonebiliato

Well-Known Member
Licensed User
Longtime User
Io invece ho un problema diverso.
Ho creato un servizio che fa una richiesta HTTP e riempie delle tabelle su un database
Vorrei che funzionasse solo il servizio di un'app, per cui ho messo in testa al modulo del servizio

B4X:
#Region  Service Attributes
    #StartAtBoot: True
    #StartCommandReturnValue: android.app.Service.START_STICKY
#End Region

Sub Service_Start (StartingIntent As Intent)
Time.Enabled = True
StartActivity("main")
End Sub

Soltanto se faccio lo StartActivity della Main, il servizio torna a funzionare come dovrebbe e quindi scrive sul database, altrimenti non trovo nessun dato.
E' possibile fare in modo che il servizio sia COMPLETAMENTE avviato, anche senza aprire e chiudere la main?
Qualche idea?
 

luciano deri

Active Member
Licensed User
Longtime User
Secondo me devi aprire la main durante l'elaborazione e chiuderla quando hai finito di caricare il DB.
 

imgsimonebiliato

Well-Known Member
Licensed User
Longtime User
Ma infatti così funziona... E' che vorrei evitare di far apparire la main per mezzo secondo
 
Top