Änderungsprotokoll und Versionshinweise für das Facebook-SDK für iOS.
Änderungsprotokolle für 5.0.0 und höher findest du unter facebook/facebook-objc-sdkCHANGELOG.md auf GitHub.
5. April 2019 | Vollständiges Änderungsprotokoll
_inBackground für App-Events hinzufügen[FBSDKAppEvents clearUserID]; hinzugefügttitle, description, caption und image von FBSDKShareLinkContent sind veraltet. Sorge dafür, dass diese nicht mehr verwendet werden. [FBSDKAppEvents activateApp] wird jetzt bei der SDK-Initialisierung aufgerufen. activateApp muss nicht mehr im Code aufgerufen werdenFBSDKLoginButton. Einzelheiten dazu findest du im Upgrade-Leitfaden.FBMediaView hinzugefügt, um einen Hinweis für Herausgeber bereitzustellen, die ihr App-Layout an die Dimensionen des Ansichtsinhalts anpassen möchten. So können Herausgeber z. B. die Höhe einer Werbeanzeigenzelle in einem Feed anpassen oder ein Speziallayout für Video Ads im Hochformat anzeigen. Das Seitenverhältnis besteht aus Breite/Höhe und ist größer oder gleich 0,0. applyNaturalWidth und applyNaturalHeight wurden hinzugefügt. Diese Eigenschaften ändern die Breite bzw. Höhe basierend auf der Dimension der aktuellen FBMediaView unter Berücksichtigung der aspectRatio-Eigenschaft. Mehr über diese neuen APIs erfährst du in der Entwicklerdokumentation zu Native Ads. setMediaViewRenderingMethod wurde zu FBAdSetting hinzugefügt, um die Rendering-Methode für FBMediaView zu konfigurieren. Die verfügbaren Rendering-Methoden sind FBMediaViewRenderingMethodDefault, FBMediaViewRenderingMethodMetal, FBMediaViewRenderingMethodOpenGL und FBMediaViewRenderingMethodSoftware. adViewDidClick-Rückrufmethode von FBInstreamAdViewDelegate nicht aufgerufen wurde, wurde behoben. setUserID: und updateUserProperties: wurden zu FBSDKAppEvents hinzugefügt. Weitere Details findest du hier.application:openURL:options: wurde bei iOS 10 zu FBSDKApplicationDelegate hinzugefügt.FBSDKLoginManager-Callbacks wurden behoben.FBSDKLoginManager verursachte, wurde behoben.nativeAdDidClick: wird nun bei FBNativeAdDelegate aufgerufenUIImagePickerController-Referenz wurde entfernt, da sie zu App Store-Ablehnungen führte.FBSDKSettings setGraphAPIVersion: wurde hinzugefügt, um globale Einstellung verschiedener Graph API-Versionen zu ermöglichen.FBInstreamAdView-Klasse unterstützt Instream-Werbeanzeigen-PlatzierungenautoplayEnabled auf FBMediaView wurde durch serverseitige Steuerung ersetztPHAsset in der FnF-Videoplayer-Bibliothek, die zu einem Fehlschlagen der statischen App Store-Analyse führen können, wurden entfernt.FBSDKAppEventsUtility fetchDeferredAppInvite: ist in der neuen Version veraltet.FBSDKAppGroupAddDialog und FBSDKAddGroupJoinDialog sind veraltet.NSURLSession anstelle von NSURLConnection für Graph API-Anfragen, da NSURLConnection veraltet ist.FBSDKLoginButton wurde behoben.FBSDKShareAPI werden jetzt individuelle Foto-IDs zurückgegeben, während das SDK zuvor die Beitrags-ID des Fotoalbums zurückgegeben hat.SKStoreProductViewController wurde geändert, um alle Ausrichtungen außer umgedreht zuzulassen.FBAdEnvironmentDataFBAdConfigManager, die zu Abstürzen wegen gemischter FNF/AVFoundation-Objekte geführt habenFBAdConfigManager in gültigen SituationenviewControllerDidCancelDelegate-Methode aufgerufen wird, wenn Personen auf Cancel drücken.UIActionSheet wurde durch UIAlertController ersetzt.SKStoreProductViewController mit zuverlässigeren Ladevorgängen und automatischer ZeitüberschreitungFBAdConfig wurde behoben, aufgrund dessen AVFoundation und FNF*-Objekte zusammen verwendet wurden, wodurch Abstürze wegen einer unbekannten Auswahl verursacht wurden."objc_arc"-Flag wurde aus modulemap entfernt.viewControllerForLoginResume wurde aktualisiert.[FBSDKShareAPI.accessToken] wurde hinzugefügt, um eine Änderung des Zugriffsschlüssels für das Teilen zu ermöglichen (Pull-Request 826).-[FBSDKAppEvents logPushNotification*] und -[FBSDKAppEvents setPushNotificationsDeviceToken:] wurden hinzugefügt. Weitere Informationen findest du in der Dokumentation zu Push-Kampagnen.-[FBSDKAppLinkUtility fetchDeferredAppInvite:] wurde hinzugefügt, um App-Links für zurückgestellte App-Einladungen unter iOS zu unterstützen. Außerdem wurden FBSDKAppInviteContent.promotionCode und FBSDKAppInviteContent.promotionText hinzugefügt, um die Aufnahme eines Promotioncodes in die Einladung zu erleichtern. Weitere Informationen findest du in der Dokumentation zu App-Einladungen.-[FBSDKProfile loadCurrentProfileWithCompletion:] wurde hinzugefügt.FBSDKHashTag und FBSDKShareMediaContent wurden hinzugefügt, um das Teilen von Hashtags und gemischtem Content (wie Fotos und Videos) zu unterstützen. Ausführliche Informationen findest du in der Dokumentation zum Teilen.FBSDKShareLinkContent.quote wurde hinzugefügt, um das Teilen von Zitaten über einen Link zu unterstützen.FBSDKShareVideo.previewPhoto wurde hinzugefügt, um Fotos als Vorschau für Videos bereitzustellen.FBSDKWebDialog behoben (Rahmenausrichtung korrigiert).FBMediaView hinzugefügt.SFSafariViewController sendet nun verworfene Events.FBNativeAdTableViewCellProvider-Problem mit Registrierung von Native Ads behoben.FBAdURLSession behoben.NSString behoben.FBAdCache bei ungültigen Bild-URLs behoben.[NSString containsString:]-Verwendung in iOS 7 behoben.FBSDKLikeControl Social Sentence berücksichtigt jetzt die Ländereinstellung.FBSDKAppEvents behoben, bei dem in einigen Fällen die Attribution nicht gesendet wurde.FBSDKLoginButton-Delegate erhält nun die loginButtonWillLogin: nur beim Login über den Button.FBSDKAppEvents wurde behoben, durch den Events nicht gesendet wurden, wenn activateApp von einem Hintergrund-Thread gesendet wurde.FBSDKLoginButton hinsichtlich der Standardhöhe behoben (GitHub-Pull-Request #804: @revolter).StoreKit-Abhängigkeit wurde entfernt.NSURLSession.AVPlayer/AVPlayerItem wurde verbessert, geringfügige Performance-Verbesserungen beim Scrollen von Videos.CGColorGetComponents wurde behobenWKWebView-Rendering-Fehler mehr.FBNativeAdView lädt Content nun ordnungsgemäß bei eigenständiger VerwendungFBSDKShareAPI kann jetzt mit Datei-URLs initialisierten FBSDKShareVideo-Content teilen.sharePhotoContent keine peopleIds in FBSDKShareAPI festlegen konnte.shareVideoContent lehnt jetzt die Einstellung von peopleIds und placeId (im Graph API-Videoendpunkt nicht unterstützt) in FBSDKShareAPI ab.FBMediaView-Performance: vollständiges Überspringen des Verwischens von Bildern, wenn die Medienansicht bereits beim Idealformat für Titelbilder bei 1,9:1 bzw. nahe daran liegt.WebKit zum Rendern der Interstitial (iOS 8- und iOS 9-Geräte) auftrat.UIWindowLevelNormal befanden.AVFoundation, CoreMedia und CoreMotion entfernt wurden. Diese werden jetzt per Lazy Load zur Runtime geladen.In dieser Version wurden keine Änderungen des Binärcodes vorgenommen.
[FBSDKProfile imagePathForPictureMode] ist in der neuen Version veraltet. Stattdessen wurde [FBSDKProfile imageURLForPictureMode] hinzugefügt.[+FBSDKRequestConnection setDefaultConnectionTimeout:] wurde hinzugefügt, um die Einstellung des standardmäßigen Zeitüberschreitungswerts für alle Anfragen zu ermöglichen.GameRequestDialog gesendeten Abschlussergebnisse enthalten jetzt einen Schlüssel „to“ mit einem NSArray-Wert, der die Empfänger enthält.FBSDKAccessTokeninit und new wurden als NS_UNAVAILABLE gekennzeichnet.FBSDKApplicationDelegate application:didFinishLaunchingWithOptions: in SDK-Beispielen wurde behoben.FBSDKLoginManager bei Verwendung vonFBSDKLoginBehaviorWeb auf und verursachte einen Abbruch des Login-Vorgangs.FBSDKLoginBehavior wurden korrigiert.FBSDKLoginManager und FBSDKAppInviteDialog sind aufgrund von neuen Overloads, die einen fromViewController-Parameter akzeptieren, in der neuen Version veraltet. Dies behebt verschiedene Darstellungsprobleme unter iOS 9.[FBSDKLoginButtonDelegate loginButtonWillLogin:] wurde hinzugefügt.FBSDKLoginButton-Stil wurde korrigiert.[FBSDKMessengerSharer messengerPlatformCapabilities] ist in der neuen Version veraltet.FBMediaView wurde verbessert.[FBSDKMessengerSharer messengerPlatformCapabilities] ist in Vorbereitung für iOS 9 in der neuen Version veraltet. Anstatt zu überprüfen, welcher Messenger verfügbar ist, kannst du einfach den Inhalt senden und das SDK benachrichtigt den*die Nutzer*in, wenn diese*dieser den Messenger aktualisieren muss.FBMediaView hinzugefügt.FBSDKAppInviteContent.previewImageURL, FBSDKGameRequestContent.to, FBSDKGameRequestContent.suggestions sind in der neuen Version veraltet, um Warnungen beim Überprüfen nicht öffentlicher Auswahlen zu vermeiden.FBSDKShareAPI.createObjectsWithClientToken wurde entfernt[FBSDKAccessToken refreshCurrentAccessToken] wurde hinzugefügt, um den aktuellen Schlüssel zu aktualisieren.FBSDKTestUsersManager wurde hinzugefügt, um das Schreiben von Tests mit Testnutzer*innen zu vereinfachen.caption wurde zu FBSDKSharePhoto hinzugefügt.message wurde zu FBSDKShareAPI hinzugefügt.FBSDKShareAPI warnt jetzt in der Konsole vor fehlenden „publish_actions“, anstatt sofort eine Ausnahme auszugeben.FBSDKAppInviteContent initWithAppLinkURL: wurde entfernt. Verwende die standardmäßige init-Methode und gib die appLinkURL-Eigenschaft an.fb:explicitly_shared nicht für Open Graph-Handlungen verwendet werden konnte.FBSDKGraphRequestConnection die Nachricht „requestConnectionDidFinishLoading:“ erhielt.facebook-ios-sdk) und CocoaPods (verwende pod 'FBSDKMessengerShareKit') verfügbarFBSDKMessengerURLHandlerCancelShareContext.h wurde entfernt. Verwende stattdessen FBSDKMessengerURLHandlerCancelContext.h.FBNativeAdsManager, um Unterstützung beim Abrufen von Werbeanzeigen-Batches zu bieten.FBNativeAdView, das konfigurierbare Native Ad-Ansichten bietetFBNativeAdScrollView, das horizontales Scrollen mit FBNativeAdView oder selbstdefinierten Native Ad-Ansichten bietet.FBAdChoicesView, FBMediaView, FBAdStarRatingView.Beim Facebook-SDK für iOS v4.0 handelt es sich um ein Hauptversions-Upgrade. Weitere Informationen findest du unter Upgrade des iOS-SDK von 3.x auf 4.x.
FBSDKCoreKit.framework: das Framework, das allgemeine SDK-Klassen und APIs für App-Events und Graph API-Anfragen bereitstelltFBSDKProfile: eine zuverlässige Art, öffentliche Profildaten abzurufen.FBSDKGraphErrorRecoveryProcessor: ein Fehlerbehebungsversucher zur Verarbeitung von Facebook-Fehlern.FBSDKUtility: eine Hilfsklasse zur Unterstützung beim Parsen von URLs.FBSDKLoginKit.framework: ein Framework, das die Login-Funktionalität bereitstellt. Erfordert FBSDKCoreKit.FBSDKLoginManager: eine blockbasierte API für die Autorisierung.FBSDKShareKit.framework: ein Framework, das die Teilen-Funktionalität bereitstellt. Erfordert FBSDKCoreKit.FBSDKGameRequestDialog: ein stark typisierter Dialog zur Erstellung von Spieleanfragen.FBSDKAppInviteDialog: ein stark typisierter Dialog zum Senden von App-Einladungen.FBSDKShareAPI: eine stark typisierte Implementierung zur Durchführung von Teilen-Vorgängen über die Graph API.FBSDKShareButton/FBSDKSendButton/FBSDKLikeButton: sofort einsatzbereite Buttons für das Teilen.FBSDKMessengerSharerKit.framework: ein Framework für das Erstellen von Builds auf der Messenger-Plattform@deprecated gekennzeichnet sind, wurden entfernt.FBSDK anstelle von FB umbenannt. Beispiel: FBAppEvents -> FBSDKAppEvents.FB*Dialogs und FB*DialogsParams. Verwende den passenden stark typisierten Dialog und das Content-Modell aus FBSDKShareKit.framework.FBAppCall wurde allgemein durch FBSDKApplicationDelegate ersetzt. Weitere Informationen findest du im Leitfaden zu den ersten Schritten.FBSDKRequest* wurde durch FBSDKGraphRequest* ersetzt und bietet automatisch Fehlerbehebung sowie einfachere Fehlerklassifizierung. Weitere Informationen findest du im Upgrade-Leitfaden.FBSession und FBAccessTokenData wurden durch FBSDKLoginManager, FBSDKAccessToken ersetzt. Weitere Informationen findest du im Upgrade-Leitfaden.FBAppLinkData. Verwende BFURL aus Bolts.framework.FBGraphObject. Verwende das passende Open Graph-Content-Modell in Verbindung mit FBSDKShareAPI aus FBSDKShareKit.framework.FB*ViewController und FBCacheDescriptor. Keine Alternative. Erstelle eine Tabellenansicht und durchlaufe die Graph API-Ergebnisse manuell.FBSDKTokenCachingStrategy. Keine Alternative. FBSDKLoginManager cacht Schlüssel automatisch im Keychain. Du kannst Schlüsseländerungen überwachen, um manuelle Nachverarbeitungen durchzuführen (siehe [FBSDKAccessToken currentAccessToken]).