sqlite-Daten auf Smartphone extern sichern

Startseite Foren Deutsches LiveCode-Forum sqlite-Daten auf Smartphone extern sichern

Ansicht von 6 Antwort-Themen
  • Autor
    Beiträge
    • #19741
      hoettgess
      Teilnehmer

      Hallo liebe Community,
      ich speichere die mit meiner App – eine Art Vokabeltrainer – erstellten Daten in einer sqlite-Datenbank auf dem Smartphone. Diese Daten möchte ich von Zeit zu Zeit extern sichern.
      Auf alle mit specialFolderPath() ansprechbaren Verzeichnisse (auch „external storage“) habe ich mit meinem Dateimanager weder Lese- noch Schreib-Zugriff. Andere, mit dem Dateimanager erreichbare Verzeichnisse auf dem Smartphone kann ich ja wohl ohnehin nicht direkt ansprechen?
      Wie habt ihr dieses Problem gelöst?
      LG hoettgess

    • #19747
      Torsten
      Teilnehmer

      Hi hoettgoess,

      es gibt verschiedene Möglichkeiten, eine lokal gespeicherte Datei nach woanders zu kopieren:

      1. Versand per Mail mit mobileComposeMail
      2. Upload per FTP-Upload
      3. Upload mit POST

      2 und 3 machen nur Sinn, wenn Du Zugriff auf einen eigenen Webserver hast, am einfachsten also Nummer 1, da verschickst Du die Dateien einfach amn Dich per eMail.

      LG
      Torsten

    • #19752
      hoettgess
      Teilnehmer

      Hallo Torsten,
      vielen Dank für die Infos. Nr. 1 werd ich morgen mal ausprobieren, Syntax hab ich mir schon mal angeschaut, scheint nicht so kompliziert zu sein. Hatte vor einiger Zeit mit XAMPP einen lokalen Webserver installiert. Ich nehme an, dass ich mit Smartphone auch darauf zugreifen kann, wenn er aktiviert ist? Muss mich jedoch in die Materie FTP-Upload und POST noch einarbeiten.
      LG Hoettgess

      • #19770
        Torsten
        Teilnehmer

        Hallo Hoettgess,

        mir deinem lokalen Server und entsprechenden Livecode-Server-Skripten kannast Du auch was machen.

        Nochmal zum Verständnis Deines Problem: du hast eine App auf deinem Smartphone und willst Daten von dieser App auf einem anderen Rechner sichern?

        Das Einfachste wäre, wenn Du deine Datei mit POST-Befehl an ein eigenes Livecode-Skript auf deinem Server übersendest. Ich habe das in der Form auch noch nicht gemacht, aber ich schau mal nach, wie es zu machen wäre.

        LG
        Torsten

    • #19776
      Axwald
      Teilnehmer

      Hi,

      FTP ist simpel:

         put "[theLocalFilePath]" into myFilePath2Send  --  D://Data/myFile.txt
         put "[theFTPFilePath]" into myFilePath2Save    --  myDomain.net/FTP_Up/myFile.txt
         put "[theFTPUserName]" into myFTPUser          --  charlie
         put "[theFTPPassword]" into myFTPPass          --  123456
         put "ftp://" & myFTPUser & ":" & \
               urlencode(myFTPPass) & "@" & \
               myPath2Save into myFTPFileURL
         
         get URL ("binfile:" & myFilePath2Send)         --  Local File
         if the result is not empty then
            answer error "Fehler beim Lesen: " & CR & the result titled "Ouch!"
            exit to Top
         end if
         
         put it into URL myFTPFileURL                   --  Remote File
         if the result is  --  => Übung für den Leser ;-)

      Die Ausdrücke in eckigen Klammern müßen etwas sinnvolles enthalten. Der User muß im FTP-Verzeichnis Schreibrechte haben.
      ACHTUNG: Der FTP-Pfad ist abhängig von dem FTP-Stammverzeichnis des Users! Sollte das „myDomain.net/FTP/“ sein, dann liegt o.a. „FTP_UP/“ da drin, nicht auf der „myDomain.net/“ Ebene, wie man denken würde!

      Viel Spaß!

    • #19787
      Torsten
      Teilnehmer

      Für die Einrichtung eines eigenen FTP-Servers auf einem Windows-Rechner siehe hier: youtube.com/watch?v=aJVihaBz2nA

      Oder sich einen kostenlosen FTP-Server im Netz besorgen, hier empfehle ich bplaced.net

    • #19789
      hoettgess
      Teilnehmer

      Hallo Torsten,
      vielen Dank für Deine umfassenden Tipps! Versand per Mail mit mobileComposeMail funktioniert, damit ist das Wichtigste, nämlich die sqlite-Datenbank zu sichern, schon mal gewährleistet. Von dort kann ich sie ja per Installationsroutine im Notfall wieder auf das Smartphone zurückkopieren.
      Mittlerweile hab ich es auch geschafft die Daten der APP in einer mysql-Datenbank auf meinem lokalen Webserver zu speichern, bislang nur aus der Windows-Desktop-Umgebung heraus. Normalerweise betreibe ich den Vokabeltrainer lokal mit der sqlite-Datenbank auf dem Smartphone. Von Zeit zu Zeit würde ich gerne diese Daten entweder auf meinen lokalen Webserver oder auf einem FTP-Server speichern. Ich dachte mir, per Procedure die Daten jeder Tabelle in eine Variable auszulesen und diese wieder in einer mysql-Datenbank einzulesen und auf dem Server zu speichern. Danke diesbezüglich für den Tipp mit bplaced.net.
      Werd die nächsten Tage mal weiter probieren, auch mit POST und mich dann nochmal melden.
      LG hoettgess

    • #19790
      hoettgess
      Teilnehmer

      Hi Axwald,
      Danke für den Code. Leider habe ich noch keinen externen Ftp-Server, lediglich einen lokalen XAMPP-Webserver. Weißt Du, wie ich diesen adressieren kann?
      LG hoettgess

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