Daten von einer App aus dem APP-Ordner auf Android nach Windows übertragen

Startseite Foren Deutsches LiveCode-Forum Daten von einer App aus dem APP-Ordner auf Android nach Windows übertragen

Ansicht von 6 Antwort-Themen
  • Autor
    Beiträge
    • #33818
      Thomas Heine
      Teilnehmer

      Hallo zusammen,

      ich möchte gerne eine APP programmieren, mit der der man bestimmte Daten erfassen und auf dem Handy abspeichern kann. Soweit kein Problem. Dazu habe ich den Befehl

      put specialfolderpath(„documents“) & „/aufnahme.txt“ into datei
      put „abc“ into url(„file:“ & datei )

      Die Dateien werden aber abgelegt im Installationsordner der App. Debb specialfolderpath(„documents“) ergibt nämlich: unter Android:
      /data/user/0/com.yourcompany.yourapp/files.

      Die Datei wird im Installationspfad der App abgelegt. Wie kriege ich die daraus? Ich dachte, „documents“ würde die Datei im Documents-Ordner ablegen, den man ganz normal im Zugriff hat. Ich weiss, daß das Thema schon in diesem und im englischsprachigen Forum behandelt worden ist und daß darin keine echte Lösung vorgeschlagen wurde. Offenkundig ist Android beim Zugriff auf Systemordner sehr restriktiv, und vielleicht ist das bei Apple auch so. Aber ich hätte gerne die Möglichkeit , die Datei aus meinem APP-Ordner nach Windows zu übertragen, und sie dort in Excel weiterzuverarbeiten.

      Vielen Dank schon mal im Voraus!

    • #33820
      Thomas Heine
      Teilnehmer

      P. S. :
      Unter Windows klappt das Anlegen einer Datei im Documents-Ordner vorzüglich.

    • #33821
      Klaus Major
      Verwalter

      Hallo Thomas,

      das ist so korrekt!

      Auf der mobilen Platform (iOS und Android) ist der DOCUMENTS Ordner, anders als auf dem Desktop,
      nur ein kleiner Teil innerhalb der App, in der die App selber (also wir) schreiben dürfen.

      Und ganz offensichtlich kommen wir so nicht an die Daten ran. Du müsstest sie entweder per Email
      verschicken oder auf einen FTP Server kopieren oder an ein CGI auf einem Server POSTen.

      Aber vielleicht geht da auch mit einer SD Karte?
      Es gibt nämlich noch -> specialfolderpath(„external documents“)!
      Eventuell kann man dort die Daten hinkopieren, und die SD Karte dann am Rechner auslesen?
      Habe ich mangels SD Karte noch nie gemacht, aber ist sicher einen Versuch wert.

      Gruß

      Klaus

    • #33826
      Torsten
      Teilnehmer

      1. Documents ist komplett unsichtbar außer für die App selbst
      2. External documents ist sichtbar für alle anderen Apps, z. B. Auch Total Commander oder Android File Transfer

    • #33855
      Torsten
      Teilnehmer

      Wenn man den Identifier der App kennt, kann man auf deren Dateien im „external documents“-Folder nach einer Leseberechtigung zugreifen:

      
        androidRequestPermission "android.permission.READ_EXTERNAL_STORAGE" 
        put url "file:/storage/emulated/0/Android/data/com.thecompany.theapp/files/theFile.txt" into field "Data"
        

      External storage = SD war am Anfang so, aber ist aber jetzt nicht mehr, sondern bedeutet, dass Dateien von anderen Apps gelesen werden dürfen:
      https://docs.microsoft.com/de-de/xamarin/android/platform/files/external-storage?tabs=macos

    • #33856
      Klaus Major
      Verwalter

      androidRequestPermission!!!
      HA, wieder was Neues gelernt, danke! 🙂

    • #33935
      Torsten
      Teilnehmer

      Hallo,

      nochmal für Thomas: wenn Du Dateien vom Smartphone auf den Desktop/Laptop-Rechner übertragen willst, musst Du

      1. entweder die Dateien per Mail als Anhang (Attachement) verschicken:

      put tFileContent into tAttachment["data"]
      put "text/plain" into tAttachment["type"]
      put tFileName into tAttachment["name"]
      mobileComposeMail tFileName, "adressat@aaa.de",,,, tAttachment

      2. die Dateien im „external documents“-Ordner speichern, wo Du sie per USB mittels Android File Transfer (macOS) oder anderen Tools kopieren kannst.

      Happy Coding
      Torsten

Ansicht von 6 Antwort-Themen
  • Du musst angemeldet sein, um auf dieses Thema antworten zu können.