2016-12-28 4 views
0

Je intention commence à obtenir une image de stockage de fichiersTout en obtenant le fichier de DropBox en utilisant chooserIntent, l'activité écoutant résultat se redémarrée (onCreate est appelé) PARFOIS

Intent intent = new Intent(); 
intent.setType("image/*"); 
intent.setAction(Intent.ACTION_GET_CONTENT); 
startActivityForResult(Intent.createChooser(intent, "Select Picture:"), 
Constants.REQUEST_CODE_DOC_PROVIDER); 

L'interface utilisateur contient toutes les applications installées sur mon appareil de que je suis intéressé par dropbox. Quand je choisi DropBox de tiroir pour obtenir une image que je remarquai journal et je suis venu à la conclusion suivante s'il vous plaît me aider à résoudre ce problème

Cas 1:

  • Je choisis l'image et le contrôle Revient en activité -> onActivityResult

cas n ° 2:

  • dès que je sélectionne l'option DropBox du tiroir mon activité obtient DEAD.
  • UI DropBox est toujours là quand je choisis le contrôle de l'image revient à activty mais cette fois-ci se oncreate a appelé à nouveau

Question 1: pourquoi l'activité devient mort et onCreate() est appelée à nouveau lorsque le contrôle revient à l'activité?

Question 2: Comment gérer ce scénario? cela peut-il être géré en sauvegardant l'état de l'instance?

Merci!

Répondre

0

1) Lorsque votre activité d'appel n'est plus au premier plan, elle peut être tuée en raison de la pression de la mémoire. Quand vous y retournerez, il sera recréé.

2) Correct, cela est prévu et doit être géré en utilisant onSaveInstanceState. Ce lot vous est ensuite donné en onCreate: source