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

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

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

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

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

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

1 Firebase AI Logic เดิมชื่อ "Vertex AI in Firebase"

2 Firebase SQL Connect เดิมชื่อ "Firebase Data Connect"

App Clips

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

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

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

GoogleService-Info.plist

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

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

Swift Package Manager

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

ส่วนขยาย Swift

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

SwiftUI

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

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

การสวิซเซิลตัวแทนแอป

Firebase จะสวิซเซิลเมธอดบางอย่างในคลาส App Delegate ของแอปเพื่อ เชื่อมต่อบริการบางอย่างของ Firebase กับการเรียกกลับของระบบปฏิบัติการโดยอัตโนมัติ เช่น FCM และโทเค็น APNs คุณปิดใช้การสวิซเซิลในแอปได้โดย เพิ่มแฟล็ก 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 Apple Platform SDK

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

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

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

FirebaseUI

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

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

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

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