ทำความเข้าใจ Firebase บนแพลตฟอร์ม Apple

ในขณะที่พัฒนาแอป Apple โดยใช้ Firebase คุณอาจพบแนวคิดที่ไม่คุ้นเคยหรือเฉพาะเจาะจงกับ Firebase หน้านี้มีไว้เพื่อตอบคำถามเหล่านั้นหรือแนะนำแหล่งข้อมูลสำหรับดูข้อมูลเพิ่มเติม

หากคุณมีคำถามเกี่ยวกับหัวข้อที่ไม่ได้กล่าวถึงในหน้านี้ โปรดไปที่ชุมชนออนไลน์ของเรา นอกจากนี้ เราจะอัปเดตหน้านี้ด้วยหัวข้อใหม่ๆ เป็นระยะๆ ดังนั้นโปรดกลับมาดูว่าเราได้เพิ่มหัวข้อที่คุณต้องการเรียนรู้หรือไม่

การรองรับไลบรารี Firebase ตามแพลตฟอร์ม

ตารางต่อไปนี้อธิบายว่าไลบรารี Firebase ใดเข้ากันได้กับแพลตฟอร์ม Apple ใด ขณะนี้ visionOS และ watchOS ได้รับการสนับสนุนจากชุมชนเท่านั้น ดูวิธีการติดตั้งและปัญหาที่ทราบได้จากที่เก็บ GitHub ของ Firebase SDK สําหรับแพลตฟอร์ม Apple

คลัง iOS macOS Mac
Catalyst
TVOS visionOS watchOS
A/B Testing
Analytics v8.9.0 ขึ้นไป v8.9.0 ขึ้นไป v8.9.0 ขึ้นไป
Analytics ที่ไม่มีรหัสโฆษณา v8.9.0 ขึ้นไป v8.9.0 ขึ้นไป เวอร์ชัน 8.9.0 ขึ้นไป
Conversion ที่เกิดขึ้นบนอุปกรณ์เคลื่อนที่ Analytics รายการ
ผู้ให้บริการ DeviceCheck ของ App Check watchOS 9 ขึ้นไป
App Check ผู้ให้บริการยืนยันแอป iOS 14 ขึ้นไป macOS 11 ขึ้นไป Catalyst 14+ tvOS 15 ปีขึ้นไป watchOS 9 ขึ้นไป
ผู้ให้บริการที่กำหนดเองและแก้ไขข้อบกพร่อง App Check ราย
App Distribution
Authentication บางส่วน บางส่วน บางส่วน บางส่วน บางส่วน
Cloud Firestore เฉพาะดิสโทรต้นทาง
Cloud Functions
Cloud Messaging
Cloud Storage
Crashlytics
Dynamic Links
การติดตั้ง Firebase ครั้ง
Firebase ML เครื่องมือดาวน์โหลดโมเดล
In-App Messaging
Performance Monitoring
Realtime Database
Remote Config
Vertex AI in Firebase iOS 15 ขึ้นไป macOS 12 ขึ้นไป Catalyst 15 ขึ้นไป tvOS 15 ขึ้นไป (การสนับสนุนจากชุมชนเท่านั้น) watchOS 8 ขึ้นไป

App Clips

ไลบรารี Firebase ส่วนใหญ่จะสร้างและทํางานในเป้าหมาย App Clip อย่างไรก็ตาม ไลบรารีจํานวนมากถูกจํากัดเนื่องจากข้อจํากัดของระบบปฏิบัติการพื้นฐาน ปัญหาที่ทราบมีดังนี้

  • Dynamic Link ส่งผู้ใช้ไปยัง App Clip ไม่ได้หากผู้ใช้แตะลิงก์โดยไม่ได้ติดตั้งแอป
  • Firestore และ Realtime Database โหลดข้อมูลใน App Clips ไม่ได้เนื่องจากทรัพยากร Dependency ของ CFStream ที่เกี่ยวข้อง

ดูรายการปัญหาทั้งหมดที่ทราบเกี่ยวกับ App Clip ได้ที่ที่เก็บ GitHub ของ Firebase

GoogleService-Info.plist

ในการเพิ่ม Firebase ไปยังโปรเจ็กต์ Apple คุณต้องเพิ่มไฟล์การกำหนดค่า GoogleService-Info.plist ลงในโปรเจ็กต์ หากต้องการใช้โปรเจ็กต์ Firebase หลายโปรเจ็กต์ในแอปเดียว โปรดดูเอกสารประกอบเกี่ยวกับการกำหนดค่าโปรเจ็กต์หลายโปรเจ็กต์

ดูรายละเอียดเพิ่มเติมเกี่ยวกับกระบวนการเริ่มต้นแอป Firebase ได้ในเอกสารอ้างอิง Swift

เครื่องมือจัดการแพ็กเกจ Swift

ดูข้อมูลเพิ่มเติมเกี่ยวกับการผสานรวม Swift Package Manager ในคู่มือของเรา

ส่วนขยาย Swift

ก่อนหน้านี้ส่วนขยาย Swift ของ Firebase Apple Platform SDK เป็นส่วนเสริมขนาดเล็กแบบโอเพนซอร์สของไลบรารีแพลตฟอร์ม Firebase สำหรับ Apple ที่มีอยู่ ซึ่งช่วยให้โค้ดของคุณใช้ฟีเจอร์เฉพาะภาษา Swift ได้ ตั้งแต่นั้นมามีการเพิ่ม API เหล่านี้ลงในไลบรารีหลักโดยตรงและไม่จำเป็นต้องรวมแยกต่างหาก หากคุณเคยมี SDK ของส่วนขยาย Swift ในโค้ดเบส โปรดดูวิธีการอัปเกรดในคู่มือการย้ายข้อมูล

SwiftUI

Firebase รองรับ SwiftUI โดยสมบูรณ์ แต่การตั้งค่าจะต่างจากแอป UIKit เล็กน้อยเพื่อให้ Firebase ทำงานได้อย่างถูกต้องในสภาพแวดล้อม SwiftUI เต็มรูปแบบ ดูรายละเอียดเพิ่มเติมได้ที่บล็อกโพสต์ของ Peter Friese

แอปพลิเคชัน SwiftUI ต้องปิดใช้การสลับที่เนื่องจากปัญหาที่ทราบแล้ว ดูรายละเอียดเพิ่มเติมได้ที่ส่วนการกระจายตัวของแอปที่ได้รับมอบสิทธิ์

การแทนที่ App Delegate

Firebase จะเปลี่ยนวิธีการบางอย่างในคลาส App Delegate ของแอปเพื่อเชื่อมต่อบริการบางอย่างของ Firebase กับระบบการเรียกกลับของ OS โดยอัตโนมัติ เช่น FCM และโทเค็น APN คุณปิดใช้การสลับตำแหน่งในแอปได้โดยใส่ Flag FirebaseAppDelegateProxyEnabled ในไฟล์ Info.plist ของแอป แล้วตั้งค่าเป็น NO

ผลิตภัณฑ์ Firebase 4 รายการใช้การสลับ App Delegate ได้แก่ Analytics, App Distribution, Authentication และ FCM หากคุณปิดใช้การสลับในแอปพลิเคชันและกำลังใช้ผลิตภัณฑ์ต่อไปนี้ โปรดดูวิธีใช้ผลิตภัณฑ์โดยไม่ต้องสลับในคู่มือเฉพาะผลิตภัณฑ์

การรองรับ iOS 14

iOS 14 มีการเปลี่ยนแปลงใหม่เกี่ยวกับสิทธิ์ของผู้ใช้ที่เกี่ยวข้องกับตัวระบุโฆษณาของผู้ใช้ ดูรายละเอียดเพิ่มเติมเกี่ยวกับผลกระทบที่อาจเกิดขึ้นกับแอปของคุณได้จากคู่มือการเตรียมพร้อมสำหรับ iOS 14

การสนับสนุน Objective-C อย่างต่อเนื่อง

Firebase จึงตัดสินใจที่จะมุ่งเน้นที่ข้อมูลโค้ด Swift และตัวอย่างโค้ดในคู่มือและเอกสารอื่นๆ สำหรับนักพัฒนาแอป เพื่อลดความซับซ้อนในการดูแลรักษาเอกสารประกอบเกี่ยวกับแพลตฟอร์ม Apple เราจะนําข้อมูลโค้ด Objective-C ออกจากคู่มือตั้งแต่วันที่ 1 มกราคม 2024 เป็นต้นไป เราจะดูแลเอกสารอ้างอิงสำหรับ Objective-C ของผลิตภัณฑ์ Firebase ทั้งหมดให้ทันสมัยอยู่เสมอ

แหล่งข้อมูลโอเพนซอร์สสําหรับ Firebase SDK แพลตฟอร์ม Apple

Firebase รองรับการพัฒนาแบบโอเพนซอร์ส และเราสนับสนุนการมีส่วนร่วมและความคิดเห็นจากชุมชน

SDK สำหรับแพลตฟอร์ม Firebase ของ Apple

Firebase SDK ทั้งหมดสําหรับแพลตฟอร์ม Apple ยกเว้น Analytics ได้รับการพัฒนาเป็นไลบรารีโอเพนซอร์สในที่เก็บ GitHub ของ Firebase สาธารณะ

FirebaseUI

FirebaseUI คือชุดไลบรารียูทิลิตีที่สร้างใน Firebase ซึ่งรวมถึงโฟลว์ UI แบบติดตั้งใช้งานทันทีสําหรับการตรวจสอบสิทธิ์และยูทิลิตีด้านข้อมูลสําหรับ Cloud Firestore และ Realtime Database ดูรายละเอียดเพิ่มเติมเกี่ยวกับ FirebaseUI ในหน้า GitHub

ตัวอย่างการเริ่มต้นใช้งานอย่างรวดเร็ว

Firebase จะเก็บรักษาคอลเล็กชันตัวอย่างการเริ่มต้นอย่างรวดเร็วสำหรับ Firebase API ส่วนใหญ่ใน iOS ค้นหาการเริ่มต้นอย่างรวดเร็วเหล่านี้ในที่เก็บการเริ่มต้นอย่างรวดเร็วของ Firebase GitHub สาธารณะของเรา

คุณสามารถเปิดการเริ่มต้นใช้งานแต่ละรายการใน Xcode แล้วเรียกใช้บนอุปกรณ์เคลื่อนที่หรือเครื่องจำลองได้ หรือจะใช้การเริ่มต้นใช้งานเหล่านี้เป็นโค้ดตัวอย่างสําหรับการใช้ Firebase SDK ก็ได้