ทำความเข้าใจ 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 ในอุปกรณ์
ผู้ให้บริการ DeviceCheck App Check watchOS 9 ขึ้นไป
ผู้ให้บริการ App Attest ของ 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
SQL Connect 2
Dynamic Links
การติดตั้ง Firebase
ตัวดาวน์โหลดโมเดล Firebase ML
In-App Messaging
Performance Monitoring
Realtime Database
Remote Config

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

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

App Clips

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

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

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

GoogleService-Info.plist

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

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

Swift Package Manager

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

ส่วนขยาย Swift

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

SwiftUI

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

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

การสวิซเซิลผู้รับมอบสิทธิ์ของแอป

Firebase จะสวิซเซิลเมธอดบางอย่างในคลาสผู้รับมอบสิทธิ์ของแอปเพื่อ เชื่อมต่อบริการ Firebase บางอย่างกับโค้ดเรียกกลับของระบบปฏิบัติการโดยอัตโนมัติ เช่น FCM และโทเค็น APNs คุณปิดใช้การสวิซเซิลในแอปได้โดยเพิ่มแฟล็ก FirebaseAppDelegateProxyEnabled ในไฟล์ Info.plist ของแอป แล้วตั้งค่าเป็น NO

ผลิตภัณฑ์ Firebase 4 รายการใช้การสวิซเซิลผู้รับมอบสิทธิ์ของแอป ได้แก่ 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 Platforms SDK

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

Firebase Apple Platforms SDK

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

FirebaseUI

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

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

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

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