همانطور که در حال توسعه برنامه 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 افزونههای کوچک و منبع باز کتابخانههای پلتفرم Apple Firebase موجود هستند که کد شما را قادر میسازد از ویژگیهای زبان Swift استفاده کند.
فریمورک های افزونه 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 ساخته شدهاند، از جمله یک جریان UI برای احراز هویت و ابزارهای داده برای Cloud Firestore و پایگاه داده Realtime. جزئیات بیشتر درباره FirebaseUI را در صفحه GitHub ما ببینید.
نمونه های شروع سریع
Firebase مجموعهای از نمونههای شروع سریع را برای اکثر APIهای Firebase در iOS نگهداری میکند. این شروعهای سریع را در مخزن عمومی Firebase GitHub ما بیابید.
میتوانید هر شروع سریع را در Xcode باز کنید، سپس آنها را روی یک دستگاه تلفن همراه یا شبیهساز اجرا کنید. یا می توانید از این شروع سریع به عنوان کد نمونه برای استفاده از Firebase SDK استفاده کنید.