פתרון בעיות באפשרויות האתחול

אם תאתחלו את האפליקציה ללא קבוצה חוקית של אפשרויות Firebase, משתמשים חדשים של האפליקציה שלך תיצור בעיות חמורות.

האפשרויות של Firebase הן קבוצת פרמטרים שנדרשים על ידי השירותים כדי לתקשר בהצלחה עם ממשקי ה-API של שרת Firebase ולשייך נתוני לקוחות את הפרויקט ב-Firebase והאפליקציה ב-Firebase. שירותי Firebase מסתמכים על אפשרויות חוקיות של Firebase שזמינות מספריית הליבה או מהספרייה המשותפת של Firebase שנוצר במהלך האתחול של Firebase.

כדי להפעיל שירותים שונים של Firebase, נדרשות אפשרויות שונות של Firebase כמו שצריך, אבל לכל שירותי Firebase נדרשות האפשרויות הבאות ב-Firebase:

  • מפתח API – הערה: זהו לא מפתח שרת של FCM. מומלץ לעיין במאמר מפתחות של שרת FCM.
    ערך לדוגמה: AIzaSyDOCAbC123dEf456GhI789jKl012-MnO
  • מזהה פרויקט – ערך לדוגמה: myapp-project-123.
  • מזהה האפליקציה ("AppID") – מזהה ייחודי של האפליקציה שהפורמט שלו תלוי בפלטפורמה:
    • ב-Android: mobilesdk_app_id – הערה: זה לא שם חבילה ל-Android.
      ערך לדוגמה: 1:1234567890:android:321abc456def7890
    • ב-iOS+: GOOGLE_APP_ID – הערה: זהו לא מזהה Apple Bundle.
      ערך לדוגמה: 1:1234567890:ios:321abc456def7890

פתרון בעיות באפליקציות ל-Android

כדי לשפר את האבטחה, יתבצע עדכון של Firebase SDK ב-27 בפברואר. לאחר מכן החלפנו את שירות מזהה המופע של Firebase בתלות Firebase Installations API.

התקנות של Firebase אוכפות את הקיום והתוקף של אפליקציות חובה ב-Firebase אפשרויות מפתח API, מזהה פרויקט ומזהה אפליקציה כדי לשייך לקוח נתונים לפרויקט Firebase שלכם. למידע נוסף, ראו FirebaseOptions.

העברת הודעות בענן ב-Firebase (FCM) עם מזהה מופע של Firebase (IID)

אם משתמשים חדשים באפליקציה נתקלים בבעיות עם FCM, כנראה יכול להיות שאתם מפעילים את Firebase ללא הקבוצה הנדרשת של Firebase אפשרויות.

ייתכן שבאפליקציה שלך נעשה שימוש בגרסה חלקית או שגויה google-services.json קובץ תצורה; או שהאפליקציה שלכם אתחול פרוגרמטי של Firebase ללא כל הרכיבים הנדרשים אפשרויות של Firebase.

כתוצאה מכך, שירותי Firebase כמו Firebase Cloud Messaging לא יפעלו כראוי אצל משתמשי קצה שהאפליקציה שלכם הותקנה אצלם אחרי שהיא שוחררה עם ערכות ה-SDK המעודכנות של Firebase. בנוסף, בקשות חוזרות ונשנות ל-Firebase שנכשלות עשויות להאט לחוויית משתמשי הקצה באפליקציה.

מה עליי לעשות?

כדי לתקן שירותי Firebase לא תקינים באפליקציות שלכם:

  1. כדי לעדכן את האפליקציה, צריך להפעיל את Firebase עם מפתח API תקף של הפרויקט, מזהה פרויקט חוקי ומזהה אפליקציה תקין (mobilesdk_app_id או 'מזהה אפליקציה').
    • תהליך האתחול שמוגדר כברירת מחדל באמצעות קובץ תצורה של Firebase: מורידים את קובץ התצורה google-services.json ממסוף Firebase ואז מחליפים את הקובץ הקיים באפליקציה.
    • אתחול פרוגרמטי באמצעות אובייקט FirebaseOptions: מורידים את קובץ התצורה google-services.json ממסוף Firebase כדי למצוא את מפתח ה-API, מזהה הפרויקט ומזהה האפליקציה, ולאחר מכן מעדכנים את הערכים האלה באובייקט FirebaseOptions באפליקציה.
  2. משיקים גרסה חדשה של האפליקציה בחנות Play.

פתרון בעיות באפליקציות של Apple

כדי לשפר את האבטחה, יתבצע עדכון של Firebase SDK ב-14 בינואר ולאחר מכן החלפנו את שירות מזהה המופע של Firebase בתלות Firebase Installations API.

התקנות של Firebase אוכפות את הקיום והתוקף של אפליקציות חובה ב-Firebase אפשרויות מפתח API, מזהה פרויקט ומזהה אפליקציה כדי לשייך לקוח נתונים לפרויקט Firebase שלכם. מידע נוסף זמין בכתובת FIROptions מידע.

העברת הודעות בענן ב-Firebase (FCM) עם מזהה מופע של Firebase (IID)

אם משתמשים חדשים באפליקציה נתקלים בבעיות ב-FCM, יכול להיות שאתם מאתחלים את Firebase בלי הקבוצה הנדרשת של אפשרויות Firebase.

ייתכן שבבקשה שלך נעשה שימוש במספר חלקי או לא חוקי קובץ תצורה GoogleService-Info.plist; או שהאפליקציה שלכם אתחול פרוגרמטי של Firebase בלי הקבוצה המלאה של האפשרויות הנדרשות ב-Firebase.

כתוצאה מכך, שירותי Firebase כמו Firebase Cloud Messaging לא יפעלו כראוי עבור משתמשי קצה שהתקינו את האפליקציה שלך אחרי שהיא הושקה עם הגרסה המעודכנת של Firebase ערכות SDK. בנוסף, בקשות חוזרות ונשנות ל-Firebase שנכשלות עשויות להאט את חוויית המשתמש באפליקציה.

מה עליי לעשות?

כדי לתקן שירותי Firebase לא תקינים באפליקציות שלכם:

  1. כדי לעדכן את האפליקציה, צריך להפעיל את Firebase עם מפתח API תקף של הפרויקט, מזהה פרויקט חוקי ומזהה אפליקציה תקין (GOOGLE_APP_ID או 'מזהה אפליקציה').
    1. תהליך האתחול שמוגדר כברירת מחדל באמצעות קובץ תצורה של Firebase: מורידים את קובץ התצורה GoogleService-Info.plist ממסוף Firebase ואז מחליפים את הקובץ הקיים באפליקציה.
    2. אתחול פרוגרמטי באמצעות אובייקט FIROptions: מורידים את קובץ התצורה GoogleService-Info.plist ממסוף Firebase כדי למצוא את מפתח ה-API, מזהה הפרויקט ומזהה האפליקציה. לאחר מכן מעדכנים את הערכים האלה באובייקט FIROptions באפליקציה.
  2. משיקים גרסה חדשה של האפליקציה ב-App Store.

מפתחות שרת FCM

אם האפליקציה משתמשת במפתח שרת FCM במקום מפתח Cloud API, עלול לגרום לפגיעוּת באבטחה במקרה שמשתמשים אותו מפתח שרת FCM כדי לשלוח התראות דרך FCM. במקרה כזה, מומלץ מאוד לשנות את האופן שבו השרת מאמת בקשות שליחה ל-FCM.

שימו לב שFCM מפתחות שרת (שהם לא זהים ל- אסור לכלול מפתחות של Firebase או Cloud API) באפליקציות, כי הם יכולים להיות התנהלות פוגעת לשליחת התראות בשם הפרויקט שלך.