Grafik als Intent bekommen

  • Hallo,


    ich möchte von einer anderen APP ein Bild empfangen können.
    Es selbst zu knipsen oder aus der Gallerie zu wählen klappt auch.
    Ebenso wird meine App als Empfänger von Bildern angezeigt, jedoch ist mein "Intent" immer null.
    Hier der Part aus meiner manifest Datei:


    <activity
    android:label="@string/app_name"
    android:name="DashboardActivity" >
    <intent-filter>
    <action android:name="android.intent.action.VIEW" />
    <action android:name="android.intent.action.SEND" />
    <action android:name="android.intent.action.SEND_MULTIPLE" />
    <category android:name="android.intent.category.DEFAULT" />
    <data android:mimeType="image/*" />
    </intent-filter>
    </activity>



    und hier der Part aus der onCreate Methode der activity :


    if(getIntent().getData() != null){
    try {
    Uri uri = getIntent().getData();
    InputStream is = getContentResolver().openInputStream(uri);
    imageView.setImageBitmap(BitmapFactory.decodeStream(is));
    Log.d("jnDashboardURI",is.toString());
    } catch (FileNotFoundException e) {
    e.printStackTrace();
    }
    } else {
    Log.d("jnDashboardURI","uri=null");
    }



    Wie gesagt, "getIntent().getData()" ist immer null :(



    bfo

  • Ich verstehe deine Frage nicht.
    getIntent() ist meines Wissens immer null, wenn du kein aufrufendes Intent hast.
    getData() ist null, wenn das aufrufende Intent keine Daten hat.
    Manche Intents arbeiten mit getExtra(), das muss dann aber dokumentiert sein.


    Nur: wenn dein getIntent() immer null ist liegt das daran, dass kein aufrufendes Intent existiert. Warum dem so ist kann ich dir auch nicht sagen.
    Wenn aber Galerie und Kamera Intents wunderbar funktionieren, liegt das wohl an der anderen App.

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.


    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

  • Bist du sicher, dass du von dem Aufrufer die URI im getData() bekommen sollst?


    Vielleicht liegt da auch was in den getIntent().getExtras() - dort kannst du mit .keySet() nachschauen, welche Schlüssel im Bundle sind. Eventuell ist dort was dabei.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!