این صفحه نکتهها و عیبیابی برای مشکلات خاص پلاتفرم Apple که ممکن است هنگام استفاده از Firebase با آنها مواجه شوید ارائه میدهد.
چالشهای دیگری دارید یا مشکلتان در زیر فهرست نشده است؟ برای پرسشگان اصلی Firebase یا پرسشگان خاص محصول، حتماً
پرسشگان اصلی Firebase را بررسی کنید.
همچنین میتوانید
مخزن GitHub کیت توسعه نرمافزار پلاتفرمهای Apple در Firebase
را برای فهرست بهروز مشکلات گزارششده و عیبیابی بررسی کنید. توصیه میکنیم
مشکلات مربوط به کیت توسعه نرمافزار Firebase Apple platforms را نیز در آنجا ثبت کنید!
برنامه من برای دسترسی به موارد Keychain در macOS، گذرواژه کاربر را درخواست میکند. چگونه این مشکل را برطرف کنم؟
وابستگی Firebase خود را به نسخه ۹.۶.۰ یا بالاتر ارتقا دهید و
[قابلیت «همرسانی Keychain»](/docs/ios/troubleshooting-faq#macos-keychain-sharing)
را به هدف خود اضافه کنید.
چرا Firebase به قابلیت «همرسانی Keychain» در macOS نیاز دارد؟
«کیتهای توسعه نرمافزار Firebase» از keychain برای ذخیره اطلاعاتی مثل شناسه نصب Firebase که برای FCM استفاده میشود استفاده میکنند. بدون دسترسی به «کلیدهای امن»، کیتهای توسعه نرمافزار Firebase ممکن است
بهدرستی کار نکنند. عملکرد keychain در macOS با عملکرد keychain بهسبک iOS که در پلاتفرمهای دیگر (iOS، tvOS، macCatalyst، و watchOS) استفاده میشود متفاوت است.
در macOS، برنامهها از یک keychain مشترک استفاده میکنند که ممکن است توسط برنامهها و
فرایندهای دیگر تغییر کند. برخلاف iOS، هیچ زنجیره کلید جعبه ایمنی وجود ندارد که برنامه
به آن دسترسی ضمنی داشته باشد. بنابراین، وقتی برنامه Mac با keychain تعامل میکند، سیستم
از کاربر میخواهد دسترسی را تأیید کند زیرا برنامه Mac ممکن است مورد keychain را
که خودش ایجاد نکرده است تغییر دهد. برای رفع این مغایرت، Firebase با کلید kSecUseDataProtectionKeychain از
زنجیره کلیدها پُرسمان میکند، که به برنامه میگوید
از عنصر زنجیره کلیدها که بخشی از گروه دسترسی زنجیره کلیدها است پُرسمان کند
(این رفتار پیشفرض در پلاتفرمهای دیگر است). قابلیت «همرسانی Keychain» لازم است زیرا برنامه برای ترکیب گروه دسترسی که میتواند بین هدفهایش همرسانی شود به آن نیاز دارد، بنابراین به برنامه اجازه میدهد آزادانه به موارد keychain در گروه دسترسی دسترسی داشته باشد.
برای اطلاعات بیشتر،
مستندات Keychain
از Apple را ببینید.
در Xcode نسخه ۱۳ و بالاتر، چرا برنامههای UIKit من نمیتوانند برخیاز
نشانیهای وب ثبتشده
در Info.plist را باز کنند؟
Apple حداکثر ۵۰ LSApplicationQueriesSchemes
ورودی در فایلهای Info.plist را معرفی کرده است. در سال ۲۰۱۵، Apple
LSApplicationQueriesSchemes را معرفی کرد تا تعداد پُرسمانهای نشانی وب
هر برنامه را محدود کند. با انتشار Xcode 13، این محدودیتها اعمال میشوند،
درحالیکه در Xcode 12 و نسخههای قبلی، محدودیت مؤثری برای تعداد
طرحها وجود نداشت.
برخیاز محصولات Firebase، مثل Firebase Authentication و Firebase Dynamic Links،
برای هدایت به برنامهتان نیاز به استفاده از طرحهای نشانی وب سفارشی دارند. این نشانیهای وب
از طرحواره نشانی وب مختصر و یکنواختی پیروی میکنند که نباید
بهطور قابلتوجهی دربرابر حد ۵۰ طرح پیوند محاسبه شود.
توجه داشته باشید که برای برنامههایی که همچنان بیشاز ۵۰
LSApplicationQueriesSchemes ثبت میکنند، برخیاز طرحها
بیصدا نادیده گرفته خواهند شد. بسته به ترتیبی که پیوندهای عمیق اضافه میشوند، ممکن است برنامه نتواند برخیاز پیوندهای عمیق را اجرا کند.
چه اعلانهای منبع بازی را باید در برنامهام بگنجانم؟
برای پلاتفرمهای Apple، کیت توسعه نرمافزار Firebase تحت پروانه Apache 2.0 توزیع میشود.