ทำความเข้าใจ 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
ผู้ให้บริการ App Check DeviceCheck WatchOS 9 ขึ้นไป
ผู้ให้บริการ App Check App Attest iOS 14 ขึ้นไป macOS 11 ขึ้นไป Catalyst 14 ขึ้นไป tvOS 15 ขึ้นไป WatchOS 9 ขึ้นไป
ผู้ให้บริการ App Check ที่กำหนดเองและผู้ให้บริการแก้ไขข้อบกพร่อง
App Distribution
การตรวจสอบสิทธิ์ บางส่วน บางส่วน บางส่วน บางส่วน บางส่วน
Cloud Firestore Distros ต้นทางเท่านั้น
Cloud Functions
Cloud Messaging
Cloud Storage
Crashlytics
ลิงก์แบบไดนามิก
การติดตั้ง Firebase
โปรแกรมดาวน์โหลดโมเดล Firebase ML
การรับส่งข้อความในแอป
Performance Monitoring
Realtime Database
การกำหนดค่าระยะไกล
Vertex AI สำหรับ Firebase

คลิปแอป

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

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

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

GoogleService-Info.plist

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

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

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

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

ส่วนขยาย Swift

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

SwiftUI

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

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

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

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

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

รองรับ iOS 14

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

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

Firebase ตัดสินใจให้ความสำคัญกับข้อมูลโค้ดและตัวอย่างโค้ดของ Swift ในคู่มือของเราและเอกสารสำหรับนักพัฒนาซอฟต์แวร์อื่นๆ เพื่อช่วยให้บำรุงรักษาเอกสารประกอบของแพลตฟอร์ม Apple ได้ง่ายขึ้น เราจะนำข้อมูลโค้ด 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 ดูรายละเอียดเพิ่มเติมเกี่ยวกับ FirebaseUI ในหน้า GitHub

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

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

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