Ich stehe derzeit vor folgendem Problem: Wenn ich ein Bild aus der Galerie abrufen möchte, verwende ich den folgenden Code, um die Absicht für die Galerie zu starten.
public void useGallery() {
this.intentbasedleave=true;
Intent intent = new Intent(Intent.ACTION_PICK,
android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
intent.setType("image/*");
startActivityForResult(
Intent.createChooser(intent, getString(R.string.pleaseselect_image)), IMAGE_PICK);
}
Wenn ich die Daten aus der Galerie erhalte, verwende ich diese Methode:
private void imageFromGallery(int resultCode, Intent data) {
Uri selectedImage = data.getData();
String[] filePathColumn = { MediaStore.Images.Media.DATA };
Cursor cursor = getContentResolver().query(selectedImage,
filePathColumn, null, null, null);
cursor.moveToFirst();
int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
String filePath = cursor.getString(columnIndex);
cursor.close();
this.updateImageView(BitmapFactory.decodeFile(filePath));
}
Das funktioniert, sofern das gewählte Bild nicht von Google+ oder Instant Uploads stammt. Dann scheint die BitmapFactory.decodeFile(filePath)) null? zu sein, da die Methode eine Nullpointer-Ausnahme auslöst.
Meine Frage lautet daher: Wie kann ich Bilder von Google+ und von Instantuploads aus der Galerie verwenden?