![]() |
iOS7: currentRadioAccessTechnology für CTTelephonyNetworkInfo???
Hallo!
In iOS7 SDK wurde der CTTelephonyNetworkInfo um die Eigenschaft currentRadioAccessTechnology ergänzt, die den Typ der Verbindung (z.B. GPRS, HSDPA, LTE usw.) zurück gibt. In der aktuellen iOSapi.CoreTelephony von XE5 gibt es diese Eigenschaft noch nicht. Besteht die Möglichkeit, diese Eigenschaft und die Funktion dahinter selber zu implementieren? Danke! |
AW: iOS7: currentRadioAccessTechnology für CTTelephonyNetworkInfo???
Keiner hat Ideen?
|
AW: iOS7: currentRadioAccessTechnology für CTTelephonyNetworkInfo???
In einem englischsprachigen Forum hat jemand vor einigen Wochen die selbe Frage gestellt, schrieb aber nach kurzer Zeit, dass er die Lösung gefunden hat. Gepostet hat er die Lösung aber nicht. Auch meine Anfrage an den Autor blieb bis jetzt unbeantwortet.
Ich verstehe eins nicht: wenn ich im SDK-Manager die SDK vom Mac importiere, dann sollte doch die aktuelle Version von CTTelephonyNetworkInfo übernommen werden, oder nicht? Oder werden nur die Classe und Methoden übernommen, die von Firemonkey bereits unterstützt werden? |
AW: iOS7: currentRadioAccessTechnology für CTTelephonyNetworkInfo???
Wenn Du das SDK importierst, werden nur die entsprechenden Header-Files kopiert. Programmieren mußt Du schon selber.
|
AW: iOS7: currentRadioAccessTechnology für CTTelephonyNetworkInfo???
Lösung:
In der Unit iOSApi.CoreTelephony der Interface-Deklaration von CTTelephonyNetworkInfo eine Zeile hinzufügen:
Delphi-Quellcode:
Dann nur noch dafür sorgen, dass beim Kompilieren nicht die bereits erstellte DCU einbezogen wird, sondern die gerade modifizierte pas-Datei. Der Aufruf zieht dann so aus:
CTTelephonyNetworkInfo = interface(NSObject)
['{F75CE940-A78E-4C64-812E-0576386B582D}'] function subscriberCellularProvider: CTCarrier; cdecl; function currentRadioAccessTechnology: NSString; cdecl; // <----- Hier die neue Funktion procedure setSubscriberCellularProviderDidUpdateNotifier(Handler: TCellularProviderNotifier); cdecl; end; TCTTelephonyNetworkInfo = class(TOCGenericImport<CTTelephonyNetworkInfoClass, CTTelephonyNetworkInfo>) end;
Delphi-Quellcode:
procedure TapIOSTelephony.UpdateProviderInfo;
var networkInfo: CTTelephonyNetworkInfo; radioAccessTechnology: string; begin networkInfo := TCTTelephonyNetworkInfo.Wrap(TCTTelephonyNetworkInfo.OCClass.alloc); networkInfo.init; FTelephonyRadioAccessTechnology := NSStringToString(networkInfo.currentRadioAccessTechnology); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:56 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz