Meine onActivityResult-Methode wird nie aufgerufen. Ich verwende Android 2.2
Ich verwende einen Tabhost, bei dem TabHosts TabGroups enthalten, die wiederum einzelne Aktivitäten enthalten.
Eine meiner individuellen Aktivitäten hat folgende Absicht
Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent,
"Select Picture"), 0);
dies lädt meine Galerie-Apps, ich verwende die Standard-Android-Galerie, um ein Bild auszuwählen, und wenn ich meine onActivityResult zurückkehren, ist meine Aktivität nicht aufgerufen.
Es sieht wie folgt aus - und ich habe einen Haltepunkt bei if(resultCode == 0)
Daher sollte die Logik meines onActivityResults im Moment keine Rolle spielen.
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode == 0) {
if (requestCode == 0) {
Uri selectedImageUri = data.getData();
//OI FILE Manager
filemanagerstring = selectedImageUri.getPath();
//MEDIA GALLERY
selectedImagePath = getPath(selectedImageUri);
//DEBUG PURPOSE - you can delete this if you want
if(selectedImagePath!=null)
System.out.println(selectedImagePath);
else System.out.println("selectedImagePath is null");
if(filemanagerstring!=null)
System.out.println(filemanagerstring);
else System.out.println("filemanagerstring is null");
//NOW WE HAVE OUR WANTED STRING
if(selectedImagePath!=null)
System.out.println("selectedImagePath is the right one for you!");
else
System.out.println("filemanagerstring is the right one for you!");
}
}
}
Lifecycle-Funktionen werden oft in unregelmäßigen Abständen für Aktivitäten innerhalb eines Tabhosts/einer Tabgroup aufgerufen. Daher habe ich überprüft, welche Lifecycle-Funktionen nach dem Schließen der Galerie aufgerufen werden (dies geschieht, sobald ich ein Bild in der Android-Galerie auswähle)
Der einzige, der aufgerufen wird, ist der onResume()
in meiner TabHost-Aktivität. Also habe ich versucht, genau die gleiche onActivityResult()
Methode in meiner TabHost-Klasse UND in der TabActivity-Klasse. Mit einem Haltepunkt an der gleichen Stelle am Anfang der Methode.
Keine dieser beiden Klassen wird aufgerufen.
Wie kann ich das Ergebnis aus der Galerie-App in meiner App erhalten, wenn keine der eingebauten Empfangsmethoden darauf reagiert?
Da ich weiß, dass mein Haupt-TabHost die onResume()
aufgerufen, habe ich versucht, hinzugefügt Intent graphics = getIntent();
um zu sehen, ob es Daten von der Galerieauswahl erhalten würde, tut es nicht, also sehe ich nicht, wie ich die Logik in der onResume()-Methode entweder tun kann.
Lösungen willkommen! :)