Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Cross-Platform-Entwicklung (https://www.delphipraxis.net/91-cross-platform-entwicklung/)
-   -   Firemonkey iOS SPeichern (https://www.delphipraxis.net/165226-firemonkey-ios-speichern.html)

DMonkey 19. Dez 2011 15:09

Firemonkey iOS SPeichern
 
Hallo, gibt es inzwischen eine funktionierende Speichermöglichkeit unter iOS5?

mkinzler 19. Dez 2011 19:17

AW: Firemonkey iOS SPeichern
 
Wie meinst du das? iOS hat kein lokales Dateisystem, in das man Spieichern kann. Du kannst aber Daten in eine SQLite-DB abspeichern.

DMonkey 19. Dez 2011 19:34

AW: Firemonkey iOS SPeichern
 
Also, die sqlite Sache, die ich im Internet gefunden hab, lässt mein App auf meinem iphone4 unter ios5.0.1 IMMER abstürzen, wen etwas damit gemacht wird

daywalker9 19. Dez 2011 21:52

AW: Firemonkey iOS SPeichern
 
Zeig doch mal, was du gefunden hast.

AndreFM 20. Dez 2011 00:20

AW: Firemonkey iOS SPeichern
 
Man kann ja Daten speichern, muss nur darauf achten wo.

Schaue mal dieses link:
http://developer.apple.com/library/m...ppRuntime.html

Dieses Code unten ist nicht sauber, aber kann man ausprobieren. Ich habe ganz schnell was gebastelt und funktioniert ohne Probleme.
Ueber dein Problem mit SQLite, kann ich nur denken das du Probleme mit Rechte hast. Versuch die Datei unten DOCUMENTS zu speichern und dort öffnen.

Delphi-Quellcode:
function RetrieveApplicationPath(NormalPath: string): String;
var
  size: integer;
  dirTmp: string;
  tmpDelimiter: string;
begin
  tmpDelimiter := IncludeTrailingPathDelimiter('');
  size := length(NormalPath) - 1; // -1 to remove the / at end
  dirTmp := Copy(NormalPath, 1, size);
  while (dirTmp[size] <> tmpDelimiter) and (size > 2) do
    dec(size);
  Result := Copy(NormalPath, 1, size);
end;

procedure TFMain.WriteConfig;
var
  textFileTmp: TextFile;
  strTmp: string;
  error: boolean;
begin
  error := false;

  // Try to open the file for writing and write some lines
  AssignFile(textFileTmp, ConfigFileName);
  try
    ReWrite(textFileTmp);
  except
    error := true;
  end;
  if error then
    exit;

  Writeln(textFileTmp, setupIP);
  Writeln(textFileTmp, setupPort);
  CloseFile(textFileTmp);
end;

procedure TFMain.ReadConfig;
var
  textFileTmp: TextFile;
  strTmp: string;
begin
  // Reopen the file for reading only and display content
  if fileExists(ConfigFileName) then
  begin
    AssignFile(textFileTmp, ConfigFileName);
    Reset(textFileTmp);

    ReadLn(textFileTmp, setupIP);
    ReadLn(textFileTmp, setupPort);
    CloseFile(textFileTmp);
  end
  else
  begin
    setupIP := '192.168.0.1';
    setupPort := '81';
  end;
end;


procedure TFMain.FormCreate(Sender: TObject);
begin
  ApplicationPathImages := ExtractFilePath(paramstr(0));
  ApplicationPath := RetrieveApplicationPath(ApplicationPathImages);
  DocumentDirDelphi := ApplicationPath + 'Documents/';
  ConfigFileName := DocumentDirDelphi + 'config.txt';
  ReadConfig;

mkinzler 20. Dez 2011 05:12

AW: Firemonkey iOS SPeichern
 
Achtung iOS basiert zwar auf MacOSX, ist aber nicht das Selbe.

AndreFM 20. Dez 2011 07:48

AW: Firemonkey iOS SPeichern
 
Ich habe zwar ein altes link nicht gefunden und habe ein falsches link ausgewählt (Mac statt iOS), aber mein Beispiel läuft in iOS (Getestet mit Simulator, iPhone 3 mit OS 4 und iPhone 4 mit OS 5).

Richtige links:
http://developer.apple.com/library/i...uid/TP40010672

http://developer.apple.com/library/i...010672-CH2-SW2
(Schaue mal: Table 1-1 Commonly used directories of an iOS application)
Ich habe gesehen das viele Probleme haben, da es versucht with auf die Anwendungsverzeichnis zu schreiben ( ExtractFilePath(paramstr(0)) ), aber hier sollte man nichts ändern.


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:17 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz