บันทึกการเปลี่ยนแปลงและบันทึกย่อประจำรุ่นของ Facebook SDK สำหรับ iOS
สำหรับบันทึกการเปลี่ยนแปลง 5.0.0 ขึ้นไป โปรดดูที่ facebook/facebook-objc-sdkCHANGELOG.md บน GitHub
02-04-2019 | บันทึกการเปลี่ยนแปลงฉบับสมบูรณ์
_inBackground
สำหรับเหตุการณ์ในแอพ[FBSDKAppEvents clearUserID];
title
, description
, caption
และ image
ของ FBSDKShareLinkContent
โปรดดำเนินการเพื่อลบการใช้งานช่องเหล่านี้ออกอย่างเหมาะสม [FBSDKAppEvents activateApp]
ในระหว่างการเริ่มใช้งาน SDK ไม่จำเป็นต้องเรียกใช้ activateApp ในโค้ดFBSDKLoginButton
โปรดดูรายละเอียดเพิ่มเติมได้ที่คู่มือการอัพเกรดFBMediaView
เพื่อให้คำแนะนำสำหรับผู้เผยแพร่ที่ต้องการปรับเลย์เอาท์แอพของตนให้เหมาะกับขนาดเนื้อหาของมุมมอง ซึ่งจะช่วยให้ผู้เผยแพร่โฆษณาสามารถทำสิ่งต่างๆ เช่น ปรับความสูงของเซลล์โฆษณาในฟีด หรือแสดงเลย์เอาท์เฉพาะสำหรับโฆษณาแบบวิดีโอแนวตั้ง อัตราส่วนภาพคือความกว้าง/ความสูง และมากกว่าหรือเท่ากับ 0.0 applyNaturalWidth
และ applyNaturalHeight
ซึ่งจะเปลี่ยนความกว้างหรือความสูงตามขนาดของ FBMediaView
ในปัจจุบันโดยคำนึงถึงคุณสมบัติ aspectRatio
โปรดดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีใช้ API ใหม่เหล่านี้ได้ในคู่มือผู้พัฒนาโฆษณาแบบเนทีฟsetMediaViewRenderingMethod
ลงใน FBAdSetting
เพื่อกำหนดค่าวิธีการแสดงผลสำหรับ FBMediaView
วิธีการแสดงผลที่มีอยู่ประกอบด้วย FBMediaViewRenderingMethodDefault
, FBMediaViewRenderingMethodMetal
, FBMediaViewRenderingMethodOpenGL
และ FBMediaViewRenderingMethodSoftware
adViewDidClick
ของ FBInstreamAdViewDelegate
application:openURL:options:
ลงใน FBSDKApplicationDelegate
ใน iOS 10FBSDKLoginManager
FBSDKLoginManager
ก่อนเวลาอันควรnativeAdDidClick:
ที่ไม่ถูกเรียกใช้บน FBNativeAdDelegate
UIImagePickerController
ที่ทำให้ App Store ปฏิเสธFBSDKSettings setGraphAPIVersion:
เพื่ออนุญาตการตั้งค่าส่วนกลางของ API กราฟในเวอร์ชั่นต่างๆFBInstreamAdView
เพื่อรองรับตำแหน่งการจัดวางโฆษณาในสตรีมautoplayEnabled
บน FBMediaView
เพื่อสนับสนุนการควบคุมฝั่งเซิร์ฟเวอร์PHAsset
ในไลบรารีโปรแกรมเล่นวิดีโอ FnF ซึ่งอาจทำให้การวิเคราะห์แบบคงที่ของ App Store ล้มเหลวFBSDKAppEventsUtility fetchDeferredAppInvite:
FBSDKAppGroupAddDialog
และ FBSDKAddGroupJoinDialog
NSURLSession
แทน NSURLConnection
สำหรับการส่งคำขอ API กราฟตั้งแต่ NSURLConnection
FBSDKLoginButton
FBSDKShareAPI
โดยที่ก่อนหน้านี้ SDK จะส่งคืน ID ของโพสต์ที่เป็นอัลบั้มรูปภาพSKStoreProductViewController
ของ App Store เพื่อให้สามารถวางแนวได้ทุกรูปแบบ ยกเว้นกลับหัวFBAdEnvironmentData
ให้เหมาะสมFBAdConfigManager
ที่ทำให้อ็อบเจ็กต์ที่ผสมผสาน FNF / AVFoundation ขัดข้องFBAdConfigManager
ในสถานการณ์ที่ถูกต้องviewControllerDidCancel
เมื่อผู้ใช้กด Cancel
UIAlertController
แทน UIActionSheet
ที่เลิกใช้ไปแล้วSKStoreProductViewController
ด้วยการโหลดที่เชื่อถือได้มากขึ้นและการหมดเวลาอัตโนมัติFBAdConfig
ที่ทำให้อ็อบเจ็กต์ AVFoundation
และ FNF*
ถูกใช้ร่วมกัน ทำให้ "ตัวเลือกที่ไม่รู้จัก" ขัดข้อง"objc_arc"
ออกจาก modulemapviewControllerForLoginResume
[FBSDKShareAPI.accessToken]
เพื่ออนุญาตให้เปลี่ยนโทเค็นการเข้าถึงที่ใช้สำหรับการแชร์ (คำขอดึงข้อมูล 826)-[FBSDKAppEvents logPushNotification*]
และ -[FBSDKAppEvents setPushNotificationsDeviceToken:]
โปรดดูข้อมูลเพิ่มเติมได้ที่เอกสารแคมเปญแบบพุช-[FBSDKAppLinkUtility fetchDeferredAppInvite:]
เพื่อรองรับลิงก์แอพ "การเชิญคำเชิญให้ลงแอพ" แบบ Deferred บน iOS และ FBSDKAppInviteContent.promotionCode
และ FBSDKAppInviteContent.promotionText
เพื่อให้สะดวกต่อการใส่รหัสโปรโมชั่นพร้อมกับคำเชิญ โปรดดูข้อมูลเพิ่มเติมได้ที่เอกสารเกี่ยวกับคำเชิญให้ลงแอพ-[FBSDKProfile loadCurrentProfileWithCompletion:]
FBSDKHashTag
และ FBSDKShareMediaContent
เพื่อรองรับการแชร์แฮชแท็กและเนื้อหาแบบผสม (เช่น รูปภาพและวิดีโอ) โปรดดูข้อมูลเพิ่มเติมได้ที่เอกสารเกี่ยวกับการแชร์FBSDKShareLinkContent.quote
เพื่อรองรับการแชร์คำพูดจากลิงก์FBSDKShareVideo.previewPhoto
เพื่อจัดเตรียมรูปภาพเพื่อใช้นำเสนอวิดีโอFBSDKWebDialog
(แก้ไขการจัดแนวเส้นขอบ)FBMediaView
SFSafariViewController
ไม่ส่งเหตุการณ์ที่ถูกยกเลิกFBNativeAdTableViewCellProvider
FBAdURLSession
NSString
FBAdCache
เมื่อ URL รูปภาพไม่ถูกต้อง[NSString containsString:]
ใน iOS 7FBSDKLikeControl
ให้ตรงตามบริบทของแต่ละพื้นที่FBSDKAppEvents
ที่ไม่ส่งการระบุที่มาในบางกรณีFBSDKLoginButton
เพื่อรับ loginButtonWillLogin:
เมื่อเข้าสู่ระบบด้วยปุ่มเท่านั้นFBSDKAppEvents
ที่จะไม่ส่งเหตุการณ์หาก activateApp ถูกส่งจากเธรดพื้นหลังFBSDKLoginButton
เกี่ยวกับความสูงเริ่มต้น (คำขอดึงข้อมูล GitHub #804: @revolter)StoreKit
ออกNSURLSession
AVPlayer/AVPlayerItem
โดยการเพิ่มประสิทธิภาพเล็กน้อยด้วยการเลื่อนวิดีโอCGColorGetComponents
WKWebView
FBNativeAdView
ไม่โหลดเนื้อหาเมื่อใช้แบบสแตนด์อโลนFBSDKShareAPI
สามารถแชร์เนื้อหา FBSDKShareVideo
ที่เริ่มต้นด้วย URL ของไฟล์ได้แล้วsharePhotoContent
ไม่สามารถตั้งค่า peopleIds
ใน FBSDKShareAPI
ได้shareVideoContent
เพื่อปฏิเสธการตั้งค่า peopleIds
และ placeId
(ไม่รองรับในตำแหน่งข้อมูลวิดีโอ API กราฟ) ใน FBSDKShareAPI
FBMediaView
โดยจะข้ามภาพเบลอทั้งหมดหากมุมมองของสื่อนั้นเท่ากับหรือใกล้เคียงอัตราส่วน 1.9:1 ที่เหมาะสำหรับภาพหน้าปกWebKit
เพื่อแสดงผลโฆษณาคั่น (อุปกรณ์ที่ใช้ iOS 8 + 9)UIWindowLevelNormal
AVFoundation
, CoreMedia
และ CoreMotion
โดยตอนนี้จะโหลดอย่างช้าๆ ในขณะรันไทม์ไม่มีการเปลี่ยนแปลงไบนารีในรุ่นนี้
[FBSDKProfile imagePathForPictureMode]
เพิ่ม [FBSDKProfile imageURLForPictureMode]
เข้ามาแทน[+FBSDKRequestConnection setDefaultConnectionTimeout:]
เพื่ออนุญาตการตั้งค่าการหมดเวลาเริ่มต้นสำหรับคำขอทั้งหมดGameRequestDialog
ตอนนี้จะมีคีย์ "ถึง" พร้อมกับค่า NSArray
ที่มีผู้รับFBSDKAccessToken
init
และ new
เป็น NS_UNAVAILABLE
FBSDKApplicationDelegate application:didFinishLaunchingWithOptions:
ในตัวอย่าง SDKFBSDKLoginManager
โดยใช้ FBSDKLoginBehaviorWeb
และการเข้าสู่ระบบจะถูกยกเลิกFBSDKLoginBehavior
FBSDKLoginManager
และ FBSDKAppInviteDialog
เพื่อสนับสนุนการโอเวอร์โหลดใหม่ที่ใช้พารามิเตอร์ fromViewController
วิธีนี้จะช่วยแก้ไขปัญหาการนำเสนอต่างๆ ที่อาจเกิดขึ้นบน iOS 9[FBSDKLoginButtonDelegate loginButtonWillLogin:]
FBSDKLoginButton
ที่เลือก[FBSDKMessengerSharer messengerPlatformCapabilities]
FBMediaView
[FBSDKMessengerSharer messengerPlatformCapabilities]
เพื่อเตรียมพร้อมสำหรับ iOS 9 แทนที่จะตรวจสอบว่า Messenger ใช้งานอะไรได้บ้าง เพียงส่งเนื้อหา แล้ว SDK จะแจ้งเตือนผู้ใช้หากจำเป็นต้องอัพเดต MessengerFBMediaView
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
สำหรับการดำเนินการ Open Graph ได้FBSDKGraphRequestConnection
ไม่สามารถรับข้อความ 'requestConnectionDidFinishLoading:' ได้facebook-ios-sdk
) และ Cocoapods (ใช้ pod 'FBSDKMessengerShareKit'
)FBSDKMessengerURLHandlerCancelShareContext.h
ออก ใช้ FBSDKMessengerURLHandlerCancelContext.h
แทนFBNativeAdsManager
เพื่อช่วยในการเรียกข้อมูลชุดโฆษณาFBNativeAdView
ซึ่งให้มุมมองโฆษณาแบบเนทีฟที่กำหนดค่าได้FBNativeAdScrollView
ซึ่งทำให้สามารถใช้การเลื่อนในแนวนอนที่โฮสต์มุมมองโฆษณาแบบเนทีฟที่กำหนดเองหรือของ FBNativeAdView
FBAdChoicesView
, FBMediaView
, FBAdStarRatingView
Facebook SDK สำหรับ iOS เวอร์ชั่น 4.0 เป็นการอัพเกรดเวอร์ชั่นหลัก โปรดดูการอัพเกรด iOS SDK จาก 3.x เป็น 4.x
FBSDKCoreKit.framework
- เฟรมเวิร์กที่ให้บริการคลาส SDK ทั่วไป และ API สำหรับเหตุการณ์ในแอพ รวมถึงคำขอ API กราฟFBSDKProfile
- วิธีที่มีประสิทธิภาพในการดึงข้อมูลโปรไฟล์สาธารณะFBSDKGraphErrorRecoveryProcessor
- ตัวกู้คืนข้อผิดพลาดเพื่อประมวลผลข้อผิดพลาดของ FacebookFBSDKUtility
- คลาสยูทิลิตี้เพื่อช่วยแยกวิเคราะห์ URLFBSDKLoginKit.framework
- เฟรมเวิร์กที่มีฟังก์ชั่นการเข้าสู่ระบบ ต้องมี FBSDKCoreKitFBSDKLoginManager
- API แบบบล็อกเพื่อการอนุญาตFBSDKShareKit.framework
- เฟรมเวิร์กที่มีฟังก์ชั่นการแชร์ ต้องมี FBSDKCoreKitFBSDKGameRequestDialog
- กล่องโต้ตอบที่กำหนดประเภทแบบเข้มงวดเพื่อสร้างคำขอเกมFBSDKAppInviteDialog
- กล่องโต้ตอบที่กำหนดประเภทแบบเข้มงวดเพื่อส่งคำเชิญให้ลงแอพFBSDKShareAPI
- การใช้งานที่กำหนดประเภทแบบเข้มงวดเพื่อดำเนินการแชร์ผ่าน API กราฟFBSDKShareButton
/FBSDKSendButton
/FBSDKLikeButton
- ปุ่มเทิร์นคีย์สำหรับการแชร์FBSDKMessengerSharerKit.framework
- เฟรมเวิร์กสำหรับการสร้างบนแพลตฟอร์ม Messenger@deprecated
ได้ถูกลบออกแล้วFBSDK
แทน FB
ตัวอย่างเช่น FBAppEvents
-> FBSDKAppEvents
FB*Dialogs
และ FB*DialogsParams
ใช้กล่องโต้ตอบและโมเดลเนื้อหาที่กำหนดประเภทแบบเข้มงวดที่เหมาะสมจาก FBSDKShareKit.framework
FBAppCall
จะถูกแทนที่ด้วย FBSDKApplicationDelegate
โปรดดูคู่มือเริ่มต้นใช้งานFBSDKRequest*
จะถูกแทนที่ด้วย FBSDKGraphRequest*
และมีการกู้คืนข้อผิดพลาดโดยอัตโนมัติและการจัดประเภทข้อผิดพลาดที่เข้าใจง่ายขึ้น โปรดดูคู่มือการอัพเกรดFBSession
และ FBAccessTokenData
จะถูกแทนที่โดย FBSDKLoginManager
, FBSDKAccessToken
โปรดดูคู่มือการอัพเกรดFBAppLinkData
ใช้ BFURL
จาก Bolts.frameworkFBGraphObject
ใช้โมเดลเนื้อหา Open Graph ที่เหมาะสมพร้อมกับ FBSDKShareAPI
จาก FBSDKShareKit.framework
FB*ViewController
และ FBCacheDescriptor
ไม่มีตัวเลือกอื่น สร้างมุมมองตารางและทำการเพจผลลัพธ์ API กราฟด้วยตนเองFBSDKTokenCachingStrategy
ไม่มีทางเลือกอื่น FBSDKLoginManager
จะแคชโทเค็นไปที่ Keychain โดยอัตโนมัติ คุณสามารถสังเกตการเปลี่ยนแปลงโทเค็นเพื่อทำการประมวลผลโพสต์ด้วยตนเองได้ (โปรดดู [FBSDKAccessToken currentAccessToken]
)