获取我们在 Firebase 峰会上发布的所有信息,了解 Firebase 可如何帮助您加快应用开发速度并满怀信心地运行应用。了解详情

درباره Firebase در پلتفرم های اپل بیشتر بدانید

همانطور که در حال توسعه برنامه Apple خود با استفاده از Firebase هستید، ممکن است مفاهیمی را پیدا کنید که برای Firebase ناآشنا یا خاص هستند. هدف این صفحه پاسخ به این سؤالات است یا منابعی را برای کسب اطلاعات بیشتر به شما معرفی می کند.

اگر سؤالی در مورد موضوعی دارید که در این صفحه به آن پرداخته نشده است، به راحتی به یکی از انجمن های آنلاین ما مراجعه کنید. ما همچنین این صفحه را به صورت دوره‌ای با موضوعات جدید به‌روزرسانی می‌کنیم، بنابراین دوباره بررسی کنید تا ببینید آیا موضوعی را که می‌خواهید درباره آن بیاموزید اضافه کرده‌ایم یا خیر!

پشتیبانی از کتابخانه Firebase توسط پلتفرم

جدول زیر توضیح می‌دهد که کدام کتابخانه‌های Firebase با کدام پلتفرم‌های اپل سازگار هستند. در حال حاضر، watchOS فقط توسط جامعه پشتیبانی می شود. برای دستورالعمل‌های نصب و مشکلات شناخته‌شده، به مخزن SDK GitHub پلتفرم‌های Firebase Apple مراجعه کنید.

کتابخانه iOS سیستم عامل مک مک
کاتالیزور
tvOS watchOS
تست A/B
تجزیه و تحلیل نسخه 8.9.0+ نسخه 8.9.0+ نسخه 8.9.0+
تجزیه و تحلیل بدون شناسه آگهی نسخه 8.9.0+ نسخه 8.9.0+ نسخه 8.9.0+
تبدیل تجزیه و تحلیل در دستگاه
App Check DeviceCheck ارائه دهنده watchOS 9+
ارائه دهنده گواهی برنامه بررسی برنامه iOS 14+ macOS 11+ کاتالیست 14+ tvOS 15+ watchOS 9+
بررسی برنامه های سفارشی و ارائه دهندگان اشکال زدایی
توزیع برنامه
احراز هویت
Cloud Firestore
توابع ابری
پیام رسانی ابری
فضای ذخیره ابری
Crashlytics
لینک های پویا
تاسیسات فایربیس
Firebase ML Model Downloader
پیام رسانی درون برنامه ای
نظارت بر عملکرد
پایگاه داده بیدرنگ
پیکربندی از راه دور

کلیپ های برنامه

اکثر کتابخانه های Firebase در یک هدف کلیپ برنامه ساخته و اجرا می شوند، با این حال، بسیاری از آنها به دلیل محدودیت های اساسی سیستم عامل محدود شده اند. مسائل شناخته شده عبارتند از:

  • اگر کاربران بدون نصب برنامه روی پیوندی ضربه بزنند، پیوندهای پویا نمی توانند آنها را به یک کلیپ برنامه بفرستند.
  • پایگاه داده Firestore و Realtime به دلیل وابستگی اساسی CFStream نمی توانند داده ها را در App Clips بارگیری کنند.

برای مشاهده لیست کامل مشکلات شناخته شده App Clip به مخزن Firebase GitHub مراجعه کنید.

GoogleService-Info.plist

به عنوان بخشی از افزودن Firebase به پروژه Apple خود، باید فایل پیکربندی GoogleService-Info.plist را به پروژه خود اضافه کنید. اگر می‌خواهید از چندین پروژه Firebase در یک برنامه استفاده کنید، از اسناد پیکربندی چندین پروژه دیدن کنید.

برای آشنایی بیشتر با فرآیند اولیه سازی برنامه Firebase، به مستندات مرجع Swift مراجعه کنید.

مدیر بسته سوئیفت

در راهنمای ما درباره ادغام Swift Package Manager بیشتر بیاموزید.

برنامه های افزودنی سوئیفت

افزونه‌های SDK Swift پلتفرم Firebase Apple افزونه‌های کوچک و منبع باز کتابخانه‌های موجود پلتفرم Firebase Apple هستند که کد شما را قادر می‌سازد از ویژگی‌های خاص زبان سوئیفت استفاده کند.

فریمورک های افزونه Swift زیر در دسترس هستند:

  • FirebaseAnalyticsSwift
  • FirebaseDatabaseSwift
  • FirebaseFirestoreSwift
  • FirebaseInAppMessagingSwift (بتا)
  • FirebaseRemoteConfigSwift

با شروع در Firebase 9.0، برخی از کتابخانه‌های Firebase، از جمله رابط‌های Objective-C آنها، در Swift پیاده‌سازی می‌شوند و ویژگی‌های Swift-native را بدون درج وابستگی کمکی ارائه می‌کنند. SDK های زیر APIهای Swift بومی را بدون استفاده از افزونه SDK ارائه می کنند:

  • FirebaseFunctions
  • FirebaseStorage

می‌توانید برنامه‌های افزودنی سوئیفت را با CocoaPods یا با مدیریت بسته سوئیفت نصب کنید. با استفاده از CocoaPods، برای نصب افزونه سوئیفت، آن را مطابق شکل زیر در فایل پادفایل خود قرار دهید.

pod 'FirebaseAnalyticsSwift', '~> 10.0'
pod 'FirebaseInAppMessagingSwift', '~> 10.0-beta'
pod 'FirebaseDatabaseSwift'

با Swift Package Manager، کتابخانه های افزونه Swift مورد نظر را مستقیماً از همان مخزن SDK پلتفرم های Apple Firebase وارد کنید.

SwiftUI

Firebase به طور کامل از SwiftUI پشتیبانی می کند، اگرچه راه اندازی کمی متفاوت از برنامه های UIKit خواهد بود تا Firebase در یک محیط کاملاً SwiftUI به درستی کار کند. برای جزئیات بیشتر به این پست وبلاگ پیتر فریز نگاهی بیندازید.

برنامه های SwiftUI به دلیل یک مشکل شناخته شده باید Swizzling را غیرفعال کنند. برای جزئیات بیشتر به بخش swizzling delegate app مراجعه کنید.

پخش برنامه نماینده

Firebase برخی از روش‌ها را در کلاس توزیع برنامه برنامه شما تغییر می‌دهد تا به طور خودکار برخی از سرویس‌های Firebase را به تماس‌های سیستم‌عامل مانند FCM و توکن APN متصل کند. با افزودن پرچم FirebaseAppDelegateProxyEnabled در فایل Info.plist برنامه و تنظیم آن روی NO ، می‌توانید چرخش را در برنامه خود غیرفعال کنید.

چهار محصول Firebase از Swizzling App Delegate استفاده می‌کنند: Analytics، App Distribution، Authentication و FCM. اگر Swizzling را در برنامه خود غیرفعال کرده‌اید و از هر یک از محصولات زیر استفاده می‌کنید، برای آشنایی با نحوه استفاده از محصول بدون چرخاندن به راهنمای محصول مراجعه کنید:

پشتیبانی از iOS 14

iOS 14 شامل تغییرات جدیدی در مجوزهای کاربر پیرامون شناسه تبلیغاتی کاربر است. برای جزئیات بیشتر در مورد اینکه آیا برنامه شما ممکن است تحت تأثیر قرار بگیرد یا خیر، راهنمای آماده سازی برای iOS 14 را ببینید.

منابع منبع باز برای SDK های پلتفرم Apple Firebase

Firebase از توسعه منبع باز پشتیبانی می کند و ما مشارکت و بازخورد جامعه را تشویق می کنیم.

SDK های پلتفرم اپل Firebase

تمام SDK های Firebase برای پلتفرم های اپل به جز Analytics به عنوان کتابخانه های منبع باز در مخزن عمومی Firebase GitHub ما توسعه داده شده اند.

FirebaseUI

FirebaseUI مجموعه‌ای از کتابخانه‌های ابزاری است که بر روی Firebase ساخته شده‌اند، از جمله یک جریان رابط کاربری برای احراز هویت و ابزارهای داده برای Cloud Firestore و پایگاه داده Realtime. جزئیات بیشتر درباره FirebaseUI را در صفحه GitHub ما ببینید.

نمونه های شروع سریع

Firebase مجموعه‌ای از نمونه‌های شروع سریع را برای اکثر APIهای Firebase در iOS نگهداری می‌کند. این شروع‌های سریع را در مخزن عمومی Firebase GitHub ما بیابید.

می‌توانید هر شروع سریع را در Xcode باز کنید، سپس آن‌ها را روی یک دستگاه تلفن همراه یا شبیه‌ساز اجرا کنید. یا می توانید از این شروع سریع به عنوان کد نمونه برای استفاده از Firebase SDK استفاده کنید.