1

私はmORMotの初心者です。Mormot サーバーと FMX クライアントを作成しました。Winモードで動作します。次に、宛先を Android に変更すると、エラーが発生します。

[DCC Fatal Error] SynCrtSock.pas(253): F2613 Unit 'Contnrs' not found (unit 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;

Win では問題なく動作しますが、Android では動作しません。

iOS と Android のデモを作成するには?

4

1 に答える 1

5

ドキュメント に記載されているように、メイン フレームワーク ユニットの現在のバージョンは、Delphi では Win32 / Win64 システムのみを対象とし、(暫定的な状態では) FPC では Windows または Linux を対象としています。したがって、これらのプラットフォームでサーバーを実行できます。

しかし、いくつかの専用のクロスプラットフォーム クライアント ユニットを使用して、Delphi がサポートするすべてのプラットフォームでクライアントを作成し、サーバーの ORM および SOA コンテンツを使用するコードを生成することができます

UI に FMX を使用して OSX またはモバイル クライアントを作成するには、通常のユニットではなく、サブフォルダーSynCommons.pas mORMot.pasで利用可能な専用ユニットを使用します。CrossPlatform

ドキュメントはそれについてかなり詳細です。

このサンプル、関連する生成されたクライアント ユニットも参照してください。

于 2015-09-10T11:55:19.667 に答える