Wie erhalte ich den SD_Card-Pfad in android6.0 programmgesteuert?

Ich versuche zu überprüfen, ob das Gerät über externen Speicher verfügt oder nicht, indem ich den unten angegebenen externen Speicherpfad verwende.

 if (new File("/ext_card/").exists()) {
        specialPath = "/ext_card/";
    } else if (new File("/mnt/sdcard/external_sd/").exists()) {
        specialPath = "/mnt/sdcard/external_sd/";
    } else if (new File("/storage/extSdCard/").exists()) {
        specialPath = "/storage/extSdCard/";
    } else if (new File("/mnt/extSdCard/").exists()) {
        specialPath = "/mnt/extSdCard/";
    } else if (new File("/mnt/sdcard/external_sd/").exists()) {
        specialPath = "/mnt/sdcard/external_sd/";
    } else if (new File("storage/sdcard1/").exists()) {
        specialPath = "storage/sdcard1/";
    }

Aber in Marshmallow finde ich diesen Pfad nicht und während der Überprüfung mit ES FILEMANAGER geben sie wie Speicher / 3263-3131 in Moto G 3. Generation. Während Sie andere Marshmallow-Geräte einchecken, werden die Nummern unterschiedlich. Bitte helfen Sie mir zu überprüfen, ob das Marshmallow-Gerät über externen Speicher verfügt oder nicht. und wenn Speicher gefunden bedeutet, wie der Pfad dieses externen Speichers abgerufen werden kann?

Hinweis: - Ich habe die Berechtigung zum Speichern in meiner Anwendung erteilt und die Speicherberechtigung in den Einstellungen für meine App aktiviert.

Vielen Dank im Voraus und haben Sie einen Fehler in meiner Frage gefunden, bitte crt es. Danke nochmal

Antworten auf die Frage(6)

Ihre Antwort auf die Frage