2016-07-05 2 views
0

Je comprends que si j'ai une variable d'instance dans une activité. Les données seront supprimées si l'activité est supprimée par le système d'exploitation pour libérer de la mémoire. Quand la variable statique est-elle détruite? Est-ce que le système d'exploitation va tuer l'application pour libérer de la mémoire si l'application est passée en arrière-plan.Android: la variable statique sera-t-elle toujours disponible tant que l'application est en cours d'exécution?

J'ai une application avec une variable statique qui héberge des données d'application entières. Ai-je besoin de le sauvegarder/restaurer et où dois-je le faire?

+0

Vous pouvez utiliser les préférences partagées pour enregistrer des données non sensibles. Il survivra au cycle de vie de l'application, ce qui signifie qu'il sera stocké même si l'application est fermée. –

+0

En activité, il y a onPause, onDestroy. Comment puis-je vérifier l'application dans son ensemble? – LittleFunny

+0

Charger les données sur Créer et enregistrer dès que les modifications sont apportées –

Répondre

1

Le système d'exploitation va-t-il tuer l'application pour libérer de la mémoire si l'application est passée en arrière-plan.

Pas immédiatement. Mais, lorsque votre application est en arrière-plan, its process can be terminated at any point.

Ai-je besoin de sauvegarder/restaurer

Oui.

où dois-je faire?

De manière générale, vous conservez les données quand elles sont modifiées. Traitez vos champs statiques comme un cache, rien de plus.