Kaynağa Gözat

Quick.Config firemonkey android compatibility

Unknown 6 yıl önce
ebeveyn
işleme
70066f0960
2 değiştirilmiş dosya ile 10 ekleme ve 6 silme
  1. 3 3
      Quick.Config.Provider.Json.pas
  2. 7 3
      Quick.Config.pas

+ 3 - 3
Quick.Config.Provider.Json.pas

@@ -41,7 +41,7 @@ uses
   Quick.Files,
   {$ENDIF}
   Rtti,
-  {$IFDEF DELPHIRX102_UP}
+  {$IF DEFINED(DELPHIRX102_UP) AND DEFINED(MSWINDOWS)}
     System.JSON.Types,
     System.JSON.Serializers,
   {$ELSE}
@@ -97,7 +97,7 @@ begin
     json := TStringList.Create;
     try
       json.LoadFromFile(fFilename);
-      {$IFDEF DELPHIRX102_UP}
+      {$IF DEFINED(DELPHIRX102_UP) AND DEFINED(MSWINDOWS)}
         Serializer := TJsonSerializer.Create;
         try
           if TAppConfig(cConfig).DateTimeZone = TDateTimeZone.tzLocal then
@@ -144,7 +144,7 @@ begin
   try
     json := TStringList.Create;
     try
-      {$IFDEF DELPHIRX102_UP}
+      {$IF DEFINED(DELPHIRX102_UP) AND DEFINED(MSWINDOWS)}
         Serializer := TJsonSerializer.Create;
         try
           if TAppConfig(cConfig).JsonIndent then Serializer.Formatting := TJsonFormatting.Indented;

+ 7 - 3
Quick.Config.pas

@@ -37,7 +37,7 @@ uses
   Classes,
   SysUtils,
   Rtti,
-  {$IFDEF DELPHIRX102_UP}
+  {$IF DEFINED(DELPHIRX102_UP) AND DEFINED(MSWINDOWS)}
     DBXJSON,
     JSON.Types,
     JSON.Serializers;
@@ -202,7 +202,7 @@ var
 begin
   Result := '';
   try
-    {$IFDEF DELPHIRX102_UP}
+    {$IF DEFINED(DELPHIRX102_UP) AND DEFINED(MSWINDOWS)}
       Serializer := TJsonSerializer.Create;
       try
         Serializer.Formatting := TJsonFormatting.Indented;
@@ -237,7 +237,7 @@ var
   Serializer : TJsonSerializer;
 begin
   try
-    {$IFDEF DELPHIRX102_UP}
+    {$IF DEFINED(DELPHIRX102_UP) AND DEFINED(MSWINDOWS)}
       Serializer := TJsonSerializer.Create;
       try
         Serializer.Formatting := TJsonFormatting.Indented;
@@ -257,7 +257,11 @@ begin
       try
         //Streamer.Options := Streamer. .Options + [jsoDateTimeAsString ,jsoUseFormatString];
         //Streamer.DateTimeFormat := 'yyyy-mm-dd"T"hh:mm:ss.zz';
+        {$IF NOT DEFINED(FPC) AND DEFINED(ANDROID)}
+        serializer.JsonToObject(Self,json);
+        {$ELSE}
         Self := TAppConfig(serializer.JsonToObject(Self,json));
+        {$ENDIF}
       finally
         serializer.Free;
       end;