Delphi XE8 で記述されたモバイル アプリケーションがあり、2 つの別々のプロジェクトから Android または iOS に展開できます。別々のプロジェクトを維持する唯一の理由は、異なる宛先プラットフォームにはコンパイルされない異なる「uses」セクションがあることです...
ANDROID を宛先とする場合:
uses
...
FMX.Layouts, FMX.ListView,
FMX.PhoneDialer,
IdURI,
Androidapi.JNIBridge,
Androidapi.JNI.Provider,
AndroidApi.Jni.GraphicsContentViewText,
Androidapi.JNI.Net,
Androidapi.JNI.JavaTypes, Androidapi.JNI.Telephony,
AndroidAPI.Helpers,
AndroidApi.Jni.App,
Androidapi.IOUtils, IdBaseComponent, IdComponent, IdTCPConnection,
IdTCPClient, IdHTTP, Data.DBXDataSnap, IPPeerClient, ... ;
IOS を宛先として使用する場合:
uses
...
FMX.Layouts, FMX.ListView,
FMX.PhoneDialer,
///// iOS Only ///////////
MacApi.Helpers, iOSapi.UIKit,
///// iOS Only ///////////
IdURI, IdSSLOpenSSLHeaders_Static,
System.IOUtils,
IdBaseComponent, IdComponent, IdTCPConnection,
IdTCPClient, IdHTTP, Data.DBXDataSnap, IPPeerClient, ... ;
{ifdef IOS} uses ... {Else} uses .... {EndIf IOS} を配置して、2 つの異なる宛先プラットフォームに対して 2 つの個別の uses ステートメントを定義しようとしましたが、コンパイルできませんでした。
役立つアドバイスをいただければ幸いです。-- イメージベース