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.