Steffen1234: Lokale Handydatei über Link anzeigen

Hallo Zusammen,

ich möchte von einer serverseitigen Webseite eine Lokale Android-Handydatei (SD-Karte 1.jpg) anzeigen.

<a href="#" onclick="window.open('file:///sdcard/1.jpg')">CLICK ME</a>

Es wird nur ein neuer leerer Tab angezeigt.

Zweiter Versuch (siehe unten):

  • mit dem ersten Button (type file ) irgendeine Datei auswählen und 1.jpg wird über ein popup angezeigt.
  • beim zweiten Button (type button) wird die gleiche Funktion ausgeführt, aber nur eine neue leere Seite angezeigt.

Habt ihr einen Tip?

Gruß Steffen

<html>  
<head>  
<script type="text/javascript">  

  function dateianz(filename){ 
 window.open('file:///sdcard/1.jpg');
  }  
</script>  
</head>  
<body> 

<form name="anzeigen" > 
   File: <input type="file" name="filename" onChange="dateianz(this.value)"><br />  
   File: <input type="button" name="filename" onClick="dateianz('123')" value="Button2"><br />  
</form>  

</html>
  1. Hallo,

    da wirst du wohl das File-API verwenden müssen.

    https://www.html5rocks.com/de/tutorials/file/dndfiles/

    https://developer.mozilla.org/de/docs/Web/API/File

    Gruß
    Jürgen

    1. Hallo Jürgen,

      zuerst vielen Dank für die Antwort.

      Ich hab es mal getestet:

      • wenn ich eine Datei über "durchsuchen" auswähle, funktioniert es
      • wenn ich aber den lokalen Dateipfad in die Webseite scheibe, will es nicht.

      Ist die Datei auf dem Server, klappt alles.

      Das Kuriose:

      gebe ich den Dateipfad: file:///sdcard/1.jpg

      in der Adresszeile ein, wird das Bild angezeigt.

      ??? Ideen sind herzlich willkommen 😀

      Gruß Steffen

      1. Hallo Steffen,

        ich habe vor Jahren mal mit dem file-Protokoll experimentiert und bin damals an den Unterschieden zwischen IE und Firefox gescheitert. Evtl. kommt bei dir auch noch die Same Origin Policy zum tragen. Kannst du dir unter Android die Logs bzw. die Browserkonsole ansehen?

        Gruß
        Jürgen