2017-06-28 1 views
0

Ich möchte die Galerie App in einem separaten Fenster, nicht in meiner App gestartet werden. Ich möchte auch kein Bild auswählen, ich möchte nur die Standard-Galerie-App öffnen. Einige questions sind sehr ähnlich zu diesem, aber sie alle öffnen die Galerie nicht als eigenständige App, immer in der App, die startActivity(intent); aufgerufen hat. see here. Das ist meine App namens SM2. Innerhalb ist die Standard-Galerie-App sichtbar, was nicht das gewünschte Verhalten ist.Öffnen Sie die Standard-Fotogalerie App

Der folgende Code hat keine Verwendung, wenn kein Paket gibt es com.android.gallery 'am Telefon genannt ist:

  Intent launchIntent = getPackageManager().getLaunchIntentForPackage("com.android.gallery"); 
      if (launchIntent != null) { 
       startActivity(launchIntent);//null pointer check in case package name was not found 
      } 

dies eine Galerie in meiner app, nicht wie gewünscht als eigenständige Aufgabe wird geöffnet:

Intent intent1 = new Intent(Intent.ACTION_VIEW, Uri.parse(Environment.getExternalStoragePublicDirectory(
          Environment.DIRECTORY_MOVIES))); 
startActivity(intent1); 

und dies auch die Galerie in meiner App öffnet:

   Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(
          "content://media/internal/images/media/")); 
startActivity(intent); 
+0

"Dies öffnet nicht die Galerie App selbst, sondern in meiner App" - Was bedeutet "in meiner App"? Dies startet eine Aktivität. Wenn diese Aktivität von einer anderen App stammt, dann wäre es nicht "offen ... in meiner App" durch eine typische Verwendung des Ausdrucks "in meiner App". – CommonsWare

+0

Das bedeutet, dass die Galerieanwendung nicht selbst als Anwendung gestartet wird, was zum Beispiel in den aktuell geöffneten Apps zu sehen ist. Sie wird innerhalb der Anwendung gestartet, die 'startActivity (intent)' aufgerufen hat. In diesem Beispiel ist es meine eigene App Wenn Sie sich die zuletzt verwendeten Apps ansehen, können Sie die Galerie-App nicht schließen, da sich die Galerie in der App befindet, die 'startActivity (intent)' aufgerufen hat. –

Antwort

1

Es befindet sich in der Anwendung gestartet

Es ist in Ihrem task ins Leben gerufen wird. Sie können FLAG_ACTIVITY_NEW_TASK auf Ihrem Intent verwenden, um es in einer eigenen Aufgabe starten zu lassen.

ich auch nicht wollen, um ein Bild zu wählen, ich möchte nur die Standard-Galerie App öffnen

Sie sind willkommen using CATEGORY_APP_GALLERY zu versuchen, wenn auch nicht alle Galerie-Anwendungen könnte eine Aktivität haben, die diese unterstützt.

Verwandte Themen