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

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

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

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

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

คลัง iOS macOS Mac
Catalyst
TVOS VisionOS WatchOS
A/B Testing
Analytics เวอร์ชัน 8.9.0 ขึ้นไป เวอร์ชัน 8.9.0 ขึ้นไป เวอร์ชัน 8.9.0 ขึ้นไป
Analytics ที่ไม่มีรหัสโฆษณา เวอร์ชัน 8.9.0 ขึ้นไป เวอร์ชัน 8.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 Distros ต้นทางเท่านั้น
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 ขึ้นไป

คลิปแอป

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

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

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

GoogleService-Info.plist

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

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

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

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

ส่วนขยาย Swift

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

SwiftUI

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

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

การรวมกลุ่มผู้รับมอบสิทธิ์แอป

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

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

รองรับ iOS 14

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

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

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

ทรัพยากรโอเพนซอร์สสำหรับ SDK แพลตฟอร์ม Firebase ของ Apple

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

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

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

UI ของ Firebase

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

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

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

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