Facebook iOS SDK 變更紀錄和版本說明。
如需 5.0.0 和更新版本的變更紀錄,請參閱 GitHub 上的 facebook/facebook-objc-sdkCHANGELOG.md。
[FBSDKAppEvents clearUserID];FBSDKShareLinkContent 的 title、description、caption 和 image 等欄位已過時停用。請採取適當的動作,移除相關的使用設定。 [FBSDKAppEvents activateApp],不需要在程式碼中呼叫 activateApp。FBSDKLoginButton 的外觀設計。請參閱升級指南以瞭解詳情FBMediaView,為想要調整應用程式版面配置以回應檢視內容尺寸的發佈商提供提示。這可讓發佈商調整動態消息中的廣告單元格高度,或針對直向影片廣告顯示專用版面配置。長寬比為寬度/高度比,並且大於或等於 0.0。 applyNaturalWidth 和 applyNaturalHeight,可依照 aspectRatio 屬性,根據目前 FBMediaView 的尺寸變更寬度或高度。若要進一步瞭解如何使用這些新 API,請查看原生廣告開發人員文件。 setMediaViewRenderingMethod 至 FBAdSetting,以配置 FBMediaView 的轉譯方法。可用的轉譯方法為 FBMediaViewRenderingMethodDefault、FBMediaViewRenderingMethodMetal、FBMediaViewRenderingMethodOpenGL 和 FBMediaViewRenderingMethodSoftware。 FBInstreamAdViewDelegate 的 adViewDidClick 回呼方法的錯誤。 application:openURL:options: 至 FBSDKApplicationDelegate。FBSDKLoginManager 回呼的情況下顯示用戶介面時的潛在問題。FBSDKLoginManager 遭提前取消配置的錯誤。FBNativeAdDelegate 中未呼叫 nativeAdDidClick: 的問題UIImagePickerController 參照FBSDKSettings setGraphAPIVersion: 以允許為不同圖形 API 版本進行全域設定。FBInstreamAdView,以支援插播廣告版位FBMediaView 上的 autoplayEnabled setter,改用伺服器端控制項PHAsset 的無意參照,這類參照可能導致 App Store 靜態分析失敗FBSDKAppEventsUtility fetchDeferredAppInvite:。FBSDKAppGroupAddDialog 和 FBSDKAddGroupJoinDialog 介面。NSURLSession 而非 NSURLConnection 來發出圖形 API 要求,因為 NSURLConnection。FBSDKLoginButton 登出時當機的問題。FBSDKShareAPI 分享相片時會傳回個別相片編號,之前 SDK 會傳回相簿貼文編號。SKStoreProductViewController,以允許所有旋轉方向,但上下顛倒除外FBAdEnvironmentDataFBAdConfigManager 計時問題造成 FNF/AVFoundation 混合物件當機的修復項目FBAdConfigManager 中的錯誤記錄Cancel 時,會呼叫 viewControllerDidCancel 委派方法UIActionSheet 更換為 UIAlertControllerSKStoreProductViewController,使得載入更為可靠並自動逾時FBAdConfig 的計時問題,原先會造成 AVFoundation 和 FNF* 物件一起使用,導致「未知的選擇器」當機"objc_arc" 標示viewControllerForLoginResume 的方法簽章[FBSDKShareAPI.accessToken] 以允許變更用於分享的存取權杖(提取要求 826)-[FBSDKAppEvents logPushNotification*] 和 -[FBSDKAppEvents setPushNotificationsDeviceToken:]。請參閱推播行銷活動文件以瞭解詳情。-[FBSDKAppLinkUtility fetchDeferredAppInvite:],以支援 iOS 上延遲的應用程式邀請應用程式連結,並新增 FBSDKAppInviteContent.promotionCode 和 FBSDKAppInviteContent.promotionText,以便在邀請中包含促銷代碼。請參閱應用程式邀請文件以瞭解詳情。-[FBSDKProfile loadCurrentProfileWithCompletion:]FBSDKShareLinkContent.quote,以支援分享連結中的引文。FBSDKShareVideo.previewPhoto,以提供相片做為影片封面。FBSDKWebDialog 的轉譯問題(修復邊框對齊狀況)。FBMediaView。SFSafariViewController 未分派已取消事件的問題。FBNativeAdTableViewCellProvider 原生廣告註冊問題。FBAdURLSession 中少數的當機問題。NSString 時的記憶體流失問題。FBAdCache 在圖像網址無效時發生記憶體流失的問題。[NSString containsString:] 所導致的當機問題。FBSDKLikeControl 社交句型以配合地區設定。FBSDKAppEvents 在某些情況下不會傳送屬性的錯誤。FBSDKLoginButton 委派,只在使用按鈕登入時接收 loginButtonWillLogin:。FBSDKAppEvents 在 activateApp 是由背景執行緒傳送就不會傳送事件的錯誤。FBSDKLoginButton 上有關預設高度的 headerdoc 註解(GitHub 提取要求 #804:@revolter)。StoreKit 相依性。NSURLSession。AVPlayer/AVPlayerItem 效能,影片捲動的效能微幅提升CGColorGetComponents 堆積溢位的錯誤WKWebView 轉譯錯誤的問題FBNativeAdView 單獨使用時從不載入內容的問題FBSDKShareAPI 現在可以分享透過檔案網址初始化的 FBSDKShareVideo 內容。sharePhotoContent 無法在 FBSDKShareAPI 中設定 peopleIds 的問題。shareVideoContent 以拒絕在 FBSDKShareAPI 中設定 peopleIds 和 placeId(圖形 API 影片端點不支援)。FBMediaView 效能 - 如果封面圖像的媒體檢視畫面已經是或接近 1.9:1 的理想比例,則完全跳過模糊化圖像的程序。WebKit 來轉譯插頁(iOS 8 + 9 裝置)時,插頁曝光記錄發生的少數競用情況。UIWindowLevelNormal 時,會擷取目前檢視控制器的問題。AVFoundation、CoreMedia 和 CoreMotion 的直接參照,而導致的連結器錯誤,現在會在執行階段緩慢載入。此版本沒有任何二進位變更。
[FBSDKProfile imagePathForPictureMode]。改為使用新增的 [FBSDKProfile imageURLForPictureMode]。[+FBSDKRequestConnection setDefaultConnectionTimeout:],以允許設定所有要求的預設逾時值。GameRequestDialog 委派的完成結果現在會包含索引鍵「to」,以及含有收件人的 NSArray 值。FBSDKAccessTokeninit 和 new 註明為 NS_UNAVAILABLE。FBSDKApplicationDelegate application:didFinishLaunchingWithOptions: 使用問題。FBSDKLoginManager 中使用 FBSDKLoginBehaviorWeb 可能會發生 EXEC_BAD_ACCESS 的情況,登入已取消。FBSDKLoginBehavior 上的 headerdoc 註解。FBSDKLoginManager 和 FBSDKAppInviteDialog 上的數個方法已過時停用,改以採用 fromViewController 參數的新過載來取代。這可以解決 iOS 9 上發生的各種顯示問題。[FBSDKLoginButtonDelegate loginButtonWillLogin:]。FBSDKLoginButton 所選樣式。[FBSDKMessengerSharer messengerPlatformCapabilities]FBMediaView 的圖像成效[FBSDKMessengerSharer messengerPlatformCapabilities]。不需要再檢查有什麼可用的 Messenger 版本,只要傳送內容,SDK 就會在需要時提醒用戶更新 Messenger。FBMediaView 的影片支援。FBSDKAppInviteContent.previewImageURL、FBSDKGameRequestContent.to、FBSDKGameRequestContent.suggestions,以避免出現非公開選擇器驗證警告FBSDKShareAPI.createObjectsWithClientToken[FBSDKAccessToken refreshCurrentAccessToken] 以重新整理目前的權杖。FBSDKTestUsersManager 以簡化測試用戶的撰寫測試。caption 屬性至 FBSDKSharePhoto。message 屬性至 FBSDKShareAPI。FBSDKShareAPI 現在會在主控台中顯示遺失「publish_actions」的警告,而非立即擲回例外狀況。FBSDKAppInviteContent initWithAppLinkURL:。使用標準 init 並設定 appLinkURL 屬性。fb:explicitly_shared 用於開放社交關係圖動作的錯誤。FBSDKGraphRequestConnection 委派無法接收「requestConnectionDidFinishLoading:」訊息的錯誤。facebook-ios-sdk repo 的 FBSDKMessegerShareKit 資料夾中)和 Cocoapods(使用 pod 'FBSDKMessengerShareKit')FBSDKMessengerURLHandlerCancelShareContext.h。改用 FBSDKMessengerURLHandlerCancelContext.h。FBNativeAdsManager 可協助批次擷取廣告。FBNativeAdView 提供可配置的原生廣告檢視FBNativeAdScrollView 提供水平捲動體驗,可主控 FBNativeAdView 或自訂原生廣告檢視。FBAdChoicesView、FBMediaView、FBAdStarRatingView。Facebook iOS SDK 4.0 版是重大升級版本。請參閱從 iOS SDK 3.x 升級至 4.x。
FBSDKCoreKit.framework - 此架構提供常用的 SDK 類別,以及應用程式事件的 API、圖形 API 要求FBSDKProfile - 擷取公開個人檔案資料的可靠途徑。FBSDKGraphErrorRecoveryProcessor - 處理 Facebook 錯誤的錯誤復原嘗試作業。FBSDKUtility - 協助剖析網址的公用程式類別。FBSDKLoginKit.framework - 提供登入功能的架構。需要 FBSDKCoreKit。FBSDKLoginManager - 用於授權的區塊型 API。FBSDKShareKit.framework - 提供分享功能的架構。需要 FBSDKCoreKit。FBSDKGameRequestDialog - 可建立遊戲邀請的強型對話方塊。FBSDKAppInviteDialog - 可傳送應用程式邀請的強型對話方塊。FBSDKShareAPI - 可透過圖形 API 執行分享的強型實作。FBSDKShareButton/FBSDKSendButton/FBSDKLikeButton - 用於分享的 turn-key 按鈕。FBSDKMessengerSharerKit.framework - 可供在 Messenger 平台上建置的架構@deprecated 的所有類型都已移除。FBSDK 字首,而不是 FB 字首。例如,FBAppEvents 改為 FBSDKAppEvents。FB*Dialogs 和 FB*DialogsParams。使用 FBSDKShareKit.framework 中適當的強型對話方塊和內容模型。FBAppCall 通常會改為 FBSDKApplicationDelegate。請參閱新手指南。FBSDKRequest* 改為 FBSDKGraphRequest*,並自動提供錯誤復原和較簡單的錯誤分類。請參閱升級指南。FBSession 和 FBAccessTokenData 分別改為 FBSDKLoginManager 和 FBSDKAccessToken。請參閱升級指南。FBAppLinkData。使用 Bolts.framework 的 BFURL。FBGraphObject。使用適當的開放社交關係圖內容模型,搭配 FBSDKShareKit.framework 中的 FBSDKShareAPI。FB*ViewController 和 FBCacheDescriptor。沒有替代項目。建構表格檢視,並手動將圖形 API 結果分頁。FBSDKTokenCachingStrategy。沒有替代項目。FBSDKLoginManager 會自動將權杖快取至鑰匙圈。您可以觀察權杖變更,再手動進行後置處理(請參閱 [FBSDKAccessToken currentAccessToken])。