Video: SwiftUI Basics for Beginners (2019) 2024
Onderdeel van Mac Application Development For Dummies Cheat Sheet
Apple biedt veel Macintosh-frameworks voor applicatieontwikkeling (codebibliotheken) die uw app kan gebruiken om de duizenden bewerkingen in OS X. Veel van deze frameworks, zoals de PDF Kit, zijn samengesteld uit Objective-C-klassen, van waaruit uw app objecten binnen uw toepassingen kan maken en gebruiken. Sommige van deze frameworks zijn echter alleen bibliotheken met functies die uw app kan uitvoeren.
Het CFNetwork-framework is bijvoorbeeld een reeks functies die uw app kan gebruiken om nauwkeurig afgestemde netwerkverbindingen uit te voeren. De klasse NSURL biedt een goede set basisnetwerkbewerkingen die uitstekend geschikt zijn voor het ophalen van gegevens met behulp van een URL. Als uw app meer controle vereist over de netwerkcommunicatie die deze initieert, moet u het CFNetwork-framework en de bijbehorende functies gebruiken. U kunt de volgende code gebruiken om een HTTP-verzoek voor verzending naar een specifieke URL voor te bereiden:
CFStringRef httpBody = CFSTR ("); CFStringRef headerFieldName = CFSTR (" Cookie "); // voeg specifieke cookie toe aan HTTP-verzoek CFStringRef headerFieldValue = CFSTR (" loginID = my_user_name; password = my_password; "); CFStringRef-URL = CFSTR ("www.diabeticpad.com"); CFURLRef-URLRef = CFURLCreateWithStrign (kCFAllocatorDefault, url, NULL); CFStringRef-verzoekMethod = CFSTR ("GET"); CFHTTPMessageRef-aanvraag = CFHTTPMessageCreateRequest (kCFAllocatorDefault, requestMethod, url, kCFHTTPVersion1_1); CFHTTPMessageSetBody (request, httpBody); // voeg de cookie CFHTTPMessageSetHeaderFieldValue toe (request, headerFieldName, headerFieldValue); CFDataRef serializedHttpRequest = CFHTTPMessageCopySerializedMessage (request);
Nadat uw code het serialized-verzoek heeft, kan uw app vervolgens een schrijfopdracht openen streamen om het verzoek op zijn bestemming af te leveren.
Alle op C gebaseerde Apple-frameworks bieden een aantal functies voor het uitvoeren van dit type programmering op een lager niveau. ode wordt gecompliceerder, maar Apple biedt geen Objective-C-klassen voor al zijn frameworks. Als u echt de functionaliteit nodig heeft die beschikbaar is in een van deze frameworks, is dit de enige manier om de doelen van uw app te bereiken. De volgende frameworks bieden geen Objective-C-klassen:
-
Audio Toolbox
-
CFNetwerk
-
Core MIDI
-
Core-tekst
-
Directoryservice (zoals LDAP en Open Directory)
-
Beveiliging > Als u apps wilt maken die optimaal gebruik kunnen maken van de functies van OS X, moet u klaar zijn om het gebruik van niet-objectief-C-codebibliotheken te ondersteunen.