Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Desarrollo en Delphi para Android (https://www.clubdelphi.com/foros/forumdisplay.php?f=57)
-   -   USES para Android y Windows (https://www.clubdelphi.com/foros/showthread.php?t=96740)

jmbarrio 13-06-2024 11:08:15

USES para Android y Windows
 
Buenos días, estoy haciendo una apk multidevice Android y Windows, como puedo hacer el uses para que no me de errores al pasar de android a windows

El uses es el siguiente:

Código Delphi [-]
uses

  System.SysUtils, System.Types, System.UITypes, System.Classes,
  System.Variants, System.IOUtils,System.Messaging,
  FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.TabControl, FMX.Memo.Types,
  FMX.ScrollBox, FMX.Memo, FMX.Controls.Presentation, FMX.StdCtrls, FMX.Objects, FMX.Surfaces,
  Androidapi.Jni,
  Androidapi.Helpers, Androidapi.JNI.Net,
  Androidapi.JNI.GraphicsContentViewText,
  Androidapi.JNI.Os, Androidapi.JNI.App,
  Androidapi.JNI.Widget,
  Androidapi.JNI.JavaTypes,  Androidapi.JNI.Provider,
  FMX.Platform.Android,
  Androidapi.JNIBridge,  FMX.Helpers.Android, Androidapi.JNI.Media,
  Androidapi.JNI.Webkit,  Posix.Unistd, Androidapi.JNI.Support;

Al pasar a windows todas las unidades android me dan error de compilacion, entiendo que igual se hace usando el código de abajo, pero no sé como hacerlo

Código Delphi [-]
{$IF DEFINED (WIN32) or DEFINED (WIN64)}
 {$ENDIF}       
            
{$IF DEFINED (IOS)  or DEFINED (ANDROID)}
 {$ENDIF}

Muchas gracias, saludos.

manelb 13-06-2024 15:28:35

En una de mis aplicaciones tengo esto:

Código Delphi [-]
uses
  System.SysUtils, System.Types, System.UITypes, System.Classes,System.Variants,
  FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,
  FireDAC.Stan.Intf, FireDAC.Stan.Option, FireDAC.Stan.Error, FireDAC.UI.Intf,
  FireDAC.Phys.Intf, FireDAC.Stan.Def, FireDAC.Stan.Pool, FireDAC.Stan.Async,
  FireDAC.Phys, FireDAC.Phys.DS, FireDAC.Phys.DSDef, FireDAC.FMXUI.Wait,
  FireDAC.Stan.Param, FireDAC.DatS, FireDAC.DApt.Intf, FireDAC.DApt,
  FireDAC.Stan.StorageBin, System.Rtti, System.Bindings.Outputs,
  Data.Bind.EngExt, FMX.Bind.DBEngExt, Data.Bind.Components,
  FireDAC.Comp.Client, Data.DB, FireDAC.Comp.DataSet, ippeerclient, FMX.Layouts,
  FMX.StdCtrls, FMX.ListBox, FMX.MultiView, FMX.Controls.Presentation,
  Data.Bind.DBScope, System.ImageList, FMX.ImgList, FMX.Ani, System.Actions, FMX.ActnList,
  System.IOUtils, Inifiles, FMX.ListView, FireDAC.FMXUI.Async, FireDAC.Comp.UI

  {$IFDEF ANDROID}
  , Androidapi.JNIBridge, Androidapi.Helpers, Androidapi.JNI.JavaTypes,
  Androidapi.JNI.GraphicsContentViewText, Androidapi.jni.net
  {$ENDIF ANDROID}
  ;

Espero te sirva.
Saludos

manelb 13-06-2024 15:31:46

Luego, en otras partes del código, también puede ser necesario utilizar directivas de compilación

Código Delphi [-]
function TfrmPrincipal.NombreINI: String;
begin
 {$IFDEF ANDROID}
  Result:= TPath.Combine( TPath.GetDocumentsPath, INI_CONFIGURACION);
 {$ENDIF ANDROID}

 {$IFDEF MSWINDOWS}
  Result:= ExtractFilePath(ParamStr(0))+INI_CONFIGURACION;
 {$ENDIF MSWINDOWS}
end;

jmbarrio 13-06-2024 17:40:37

Cita:

Empezado por manelb (Mensaje 556080)
En una de mis aplicaciones tengo esto:

Código Delphi [-]
uses
  System.SysUtils, System.Types, System.UITypes, System.Classes,System.Variants,
  FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,
  FireDAC.Stan.Intf, FireDAC.Stan.Option, FireDAC.Stan.Error, FireDAC.UI.Intf,
  FireDAC.Phys.Intf, FireDAC.Stan.Def, FireDAC.Stan.Pool, FireDAC.Stan.Async,
  FireDAC.Phys, FireDAC.Phys.DS, FireDAC.Phys.DSDef, FireDAC.FMXUI.Wait,
  FireDAC.Stan.Param, FireDAC.DatS, FireDAC.DApt.Intf, FireDAC.DApt,
  FireDAC.Stan.StorageBin, System.Rtti, System.Bindings.Outputs,
  Data.Bind.EngExt, FMX.Bind.DBEngExt, Data.Bind.Components,
  FireDAC.Comp.Client, Data.DB, FireDAC.Comp.DataSet, ippeerclient, FMX.Layouts,
  FMX.StdCtrls, FMX.ListBox, FMX.MultiView, FMX.Controls.Presentation,
  Data.Bind.DBScope, System.ImageList, FMX.ImgList, FMX.Ani, System.Actions, FMX.ActnList,
  System.IOUtils, Inifiles, FMX.ListView, FireDAC.FMXUI.Async, FireDAC.Comp.UI

  {$IFDEF ANDROID}
  , Androidapi.JNIBridge, Androidapi.Helpers, Androidapi.JNI.JavaTypes,
  Androidapi.JNI.GraphicsContentViewText, Androidapi.jni.net
  {$ENDIF ANDROID}
  ;

Espero te sirva.
Saludos

Muchísimas gracias, funciona perfecto, no caí en empezar con una coma las uses de android.


La franja horaria es GMT +2. Ahora son las 13:30:02.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi