FireMonkey-Plattformdienste

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu FireMonkey-Anwendungshandbuch


Ein Plattformdienst ist ein FireMonkey-Interface, das Funktionen definiert, die in eine bestimmte Laufzeitplattform implementiert oder nicht implementiert sein können.

FireMonkey implementiert viele Plattformdienste, und Sie können eigene Plattformdienste implementieren.

Verwenden eines Plattformdienstes

Zum Verwenden eines Plattformdienstes müssen Sie:

  1. Ihrer Unit eine Referenz zu der Unit hinzufügen, in der Ihr Dienst deklariert ist, wie z. B. FMX.Platform.
  2. TPlatformServices.SupportsPlatformService mit dem Zielplattformdienst als Parameter aufrufen, um festzulegen, ob der angegebene Plattformdienst zur Laufzeit unterstützt wird oder nicht.
  3. Wenn SupportsPlatformService True zurückgibt, greifen Sie mit TPlatformServices.GetPlatformService auf den eigentlichen Plattformdienst zu und wandeln den Typ des zurückgegebenen Dienstes entsprechend um. Alternativ können Sie den Dienst auch mit SupportsPlatformService abrufen.

So greifen Sie beispielsweise auf den Zwischenablagedienst (IFMXExtendedClipboardService) zu:

Delphi:

var
    ClipboardService: IFMXExtendedClipboardService;
begin
    if TPlatformServices.Current.SupportsPlatformService(IFMXExtendedClipboardService, ClipboardService) then
    begin
        // …
    end;
end;

C++:

_di_IFMXClipboardService ClipboardService;
if (TPlatformServices::Current->SupportsPlatformService(__uuidof(IFMXClipboardService), &ClipboardService)) {
    // …
}

Integrierte Plattformdienste

Unit Dienst
FMX.Advertising IFMXAdvertisingService
IFMXAdvertisingTestModeService
FMX.Clipboard IFMXExtendedClipboardService
FMX.Forms IFMXFullScreenWindowService
IFMXWindowService
IFMXWindowBorderService
FMX.InAppPurchase IFMXInAppPurchaseService
FMX.Maps IFMXMapService
FMX.MediaLibrary IFMXAudioManagerService
IFMXCameraService
IFMXImageManagerService
IFMXShareSheetActionsService
IFMXTakenAudioService
IFMXTakenImageService
IFMXVideoManagerService
FMX.Menus IFMXMenuService
FMX.PhoneDialer IFMXPhoneDialerService
FMX.Pickers IFMXPickerService
FMX.Platform IFMXApplicationService
IFMXApplicationEventService
IFMXCanvasService
IFMXClipboardService
IFMXContextService
IFMXDefaultMetricsService
IFMXDefaultPropertyValueService
IFMXDeviceService
IFMXDeviceMetricsService
IFMXDialogService
IFMXDialogServiceAsync
IFMXDialogServiceSync
IFMXDragDropService
IFMXGestureRecognizersService
IFMXHideAppService
IFMXListingService
IFMXListViewPresentationService
IFMXLocaleService
IFMXLoggingService
IFMXMultiDisplayService
IFMXRenderingSetupService
IFMXSaveStateService
IFMXScreenService
IFMXSystemAppearanceService
IFMXSystemFontService
IFMXSystemInformationService
IFMXTextService
IFMXTextEditingService
IFMXWindowsTouchService
FMX.Types IFMXCursorService
IFMXMouseService
IFMXTimerService
FMX.VirtualKeyboard IFMXVirtualKeyboardService
IFMXVirtualKeyboardToolbarService
FMX.WebBrowser IFMXWBService

Registrieren und Deregistrieren von Plattformdiensten

Sie können mit TPlatformServices.AddPlatformService und TPlatformServices.RemovePlatformService Plattformdienste registrieren bzw. deren Registrierung aufheben.

Beispielsweise können Sie einen der integrierten Plattformdienste deregistrieren und ihn durch eine neue, auf Ihre Anforderungen zugeschnittene Implementierung ersetzen.

Siehe auch