Auf Bildergallerie zugreifen?

K

Kernle 32DLL

Neues Mitglied
0
Moin,

Kurze Frage, auf die ich leider trotz intensiver Google Suche keine Antwort fand: Wie zapfe ich in Android die Bildergallerie an? Alles was ich finde sind Informationen zu der Gallery View, die aber damit rein gar nichts zu tun hat :glare:

Die SD Karte bzw. Internen Speicher will ich ungerne selber Parsen, da das lange dauert, und es ja schon extra die Galerie gibt.

Hat jemand eine Idee wie ich das hinkriege, und in welchem Format die Bilder dann vorliegen?

So long,
Kernle
 
Zuletzt bearbeitet:
Also den Pfad bekommst du mit:
File path = Environment.getExternalStoragePublicDirectory( Environment.DIRECTORY_PICTURES);

Oder was versteht du unter "anzapfen"? :D
Und die Bilder liegen dann ganz gewöhnlich vor(jpg etc.).
 
Mist, ich denke das wäre es, aber ich die App muss Android 1.6 kompatibel sein, und DIRECTORY_PICTURES kam erst mit 2.2 :/

Außerdem ist mir nicht ganz klar was der Befehl macht, External heißt doch immer SD Karte oder liege ich da falsch?

Was ich suche habe ich mal dem Post angehangen. Um meine Frage nochmal zu konkretisieren: Ich muss irgendwie auf die Bildergallerie des Benutzers zugreifen können (nur Lesen, nicht Schreiben), und die darin enthaltenen Bilder als Bitmaps in meine App bekommen.
 

Anhänge

  • device1.png
    device1.png
    19,8 KB · Aufrufe: 290
  • device2.png
    device2.png
    15,9 KB · Aufrufe: 314
Ich habe für den Moment eine Temporäre Lösung gefunden. Nicht ganz das was ich wollte, aber da ich unter Zeitdruck stehe reicht das erstmal. Was besseres kann man ja per Update nachliefern...

Code:
Intent imageIntent = new Intent(Intent.ACTION_GET_CONTENT);
imageIntent.setType("image/*");
startActivityForResult(Intent.createChooser(imageIntent, "Select Picture"),1);
Code:
// To handle when an image is selected from the browser, add the following to your Activity
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data)
{ 
    if (resultCode == RESULT_OK && requestCode == 1)
        System.out.println(getRealPathFromURI(data.getData()));
}

public String getRealPathFromURI(Uri contentUri)
{
    // can post image
    String [] proj={MediaStore.Images.Media.DATA};
    Cursor cursor = managedQuery( contentUri,
            proj, // Which columns to return
            null,       // WHERE clause; which rows to return (all rows)
            null,       // WHERE clause selection arguments (none)
            null); // Order-by clause (ascending by name)
    int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
    cursor.moveToFirst();

    return cursor.getString(column_index);
}
 

Ähnliche Themen

M
  • MikelKatzengreis
Antworten
5
Aufrufe
128
swa00
swa00
B
Antworten
4
Aufrufe
491
bb321
B
Zurück
Oben Unten