德尔福mORMot.如何制作移动客户端(android,iOS)

And*_*man 1 delphi mormot

我是mORMot的新手.我做了一个mormot服务器和FMX客户端.它适用于Win模式.接下来,我将目标更改为Android并收到错误.

[DCC致命错误] SynCrtSock.pas(253):未找到F2613单位'Contnrs'(单位SynCrtSock;).

{$R *.fmx}
{$R *.LgXhdpiTb.fmx ANDROID}

function Client(const SQL: RawUTF8): RawUTF8;
var 
  Http: THttpClientSocket;
  URI: AnsiString;
begin
  if ParamCount<>0 then
    URI := AnsiString(ParamStr(1)) 
  else
    URI := '192.168.1.20';
  Http := OpenHttp(URI,'888');
  if Http <> nil then
    try
      Http.Post('root',SQL,TEXT_CONTENT_TYPE);
      result := Http.Content;
    finally
      Http.Free;
    end 
  else
    result := '';
end;


procedure TForm3.TMSFMXButton1Click(Sender: TObject);
begin
  ds1.DataSet := JSONToClientDataSet(self,Client('select * from Lists'));
end;
Run Code Online (Sandbox Code Playgroud)

它适用于Win,但不适用于Android.

如何为iOS和Android制作演示?

Arn*_*hez 5

文档所述,主要框架单元的当前版本仅针对Delphi下的Win32/Win64系统,以及(在初步状态下)FPC下的Windows或Linux.因此,您可以在这些平台上运行服务器.

但是,您可以在所有Delphi支持的平台上编写客户端,使用一些专用的跨平台客户端单元,并生成一些代码来使用服务器ORM和SOA内容.

要使用FMX作为UI编写OSX或Mobile客户端,请不要使用常规SynCommons.pas mORMot.pas单位,而是使用CrossPlatform子文件夹中可用的专用单位.

文档非常详细.

另请参见此示例以及关联的生成的客户端单元.

  • 如果你这样做该死的,如果你不这样做该死的."文档不够用." "文档太多了." (3认同)