הוסף את Firebase לפרויקט C ++ שלך
הפעל את משחקי C ++ שלך באמצעות Firebase C ++ SDK שלנו המספקים ממשק C ++ על גבי Firebase עבור iOS ו- Android.
גש ל- Firebase לחלוטין מקוד ה- C + + שלך, מבלי שתצטרך לכתוב קוד מקורי לפלטפורמה. ה- SDK של Firebase מתרגם גם ניבים רבים ספציפיים לשפה המשמשים את Firebase לממשק המוכר יותר למפתחי C ++.
גלה מידע נוסף אודות הפעלת המשחקים שלך באמצעות Firebase בדף המשחקים שלנו ב- Firebase .
כבר הוספת את Firebase לפרויקט C ++ שלך? וודא כי אתה משתמש בגירסה העדכנית ביותר של Firebase C ++ SDK .
תנאים מוקדמים
התקן את הדברים הבאים:
- Xcode 12 ואילך
- CocoaPods 1.10.0 ואילך
ודא שהפרויקט שלך מכוון ל- iOS 10 ואילך.
הגדר מכשיר iOS פיזי או השתמש בסימולטור iOS להפעלת האפליקציה שלך.
להודעות ענן ב- iOS, להלן התנאים המוקדמים:
- הגדר מכשיר iOS פיזי .
- השג מפתח אימות הודעות דחיפה של Apple עבור חשבון המפתח שלך ב- Apple .
- אפשר הודעות דחיפה ב- Xcode תחת אפליקציה> יכולות .
היכנס ל- Firebase באמצעות חשבון Google שלך.
שלב 2 : צור פרויקט Firebase
לפני שתוכל להוסיף את Firebase לפרויקט C ++ שלך, עליך ליצור פרויקט Firebase כדי להתחבר לפרויקט C ++ שלך. בקר בבינה להבין פרויקטים של Firebase למידע נוסף על פרויקטים של Firebase.
שלב 3 : רשום את האפליקציה שלך ב- Firebase
לאחר שיש לך פרויקט Firebase, תוכל להוסיף אליו את אפליקציית iOS שלך.
בקר ב'בנת פרויקטים של Firebase ' כדי ללמוד עוד על שיטות עבודה מומלצות ושיקולים להוספת אפליקציות לפרויקט Firebase, כולל אופן הטיפול בגרסאות בנייה מרובות.
עבור למסוף Firebase .
במרכז עמוד סקירת הפרויקט, לחץ על סמל ה- iOS (
) כדי להפעיל את זרימת העבודה של ההתקנה.אם כבר הוספת אפליקציה לפרויקט Firebase שלך, לחץ על הוסף אפליקציה כדי להציג את אפשרויות הפלטפורמה.
הזן את מזהה החבילה של האפליקציה שלך בשדה מזהה חבילה של iOS .
מזהה חבילה מזהה ייחודי יישום במערכת האקולוגית של אפל.
מצא את מזהה החבילה שלך: פתח את פרויקט ה- iOS שלך ב- Xcode, בחר באפליקציה ברמה העליונה בנווט הפרויקט, ואז בחר בכרטיסיה כללי .
הערך של השדה Bundle Identifier הוא מזהה ה- Bundle iOS (למשל
com.yourcompany.yourproject
).שים לב שערך מזהה החבילה תלוי באותיות רישיות, ולא ניתן לשנותו עבור אפליקציית Firebase iOS זו לאחר שנרשם לפרויקט Firebase שלך.
(אופציונלי) הזן מידע אחר על האפליקציה: כינוי לאפליקציה ומזהה App Store .
כינוי לאפליקציה : מזהה נוחות פנימי הנראה לעיניך רק במסוף Firebase
מזהה App Store : משמש קישורים דינמיים של Firebase להפניית משתמשים לדף App Store שלך ול- Google Analytics לייבוא אירועי המרה ל- Google Ads . אם לאפליקציה שלך עדיין אין מזהה App Store, תוכל להוסיף את המזהה בהמשך בהגדרות הפרויקט שלך.
לחץ על רשום אפליקציה .
שלב 4 : הוסף את קובץ התצורה של Firebase
לחץ על הורד את GoogleService-Info.plist כדי להשיג את קובץ התצורה של Firebase iOS.
קובץ התצורה של Firebase מכיל מזהים ייחודיים אך לא סודיים עבור הפרויקט שלך. למידע נוסף על קובץ תצורה זה, בקר בקטע פרויקטים של Firebase .
תוכל להוריד את קובץ התצורה של Firebase שוב בכל עת.
ודא ששם קובץ התצורה אינו מצורף עם תווים נוספים, כמו
(2)
.
פתח את פרויקט C ++ שלך ב- IDE ואז גרור את קובץ התצורה שלך לשורש פרויקט C ++.
אם תתבקש, בחר להוסיף את קובץ התצורה לכל היעדים.
סיימת עם הגדרת משימות במסוף Firebase. המשך להוסיף להלן Firebase C ++ SDKs .
שלב 5 : הוסף SDK של Firebase C ++
השלבים בסעיף זה הם דוגמה כיצד להוסיף מוצרי Firebase נתמכים לפרוייקט C ++ שלך.
הורד את ה- SDK של Firebase C ++ ולאחר מכן פתח את ה- SDK במקום נוח.
ה- SDK של Firebase C ++ אינו ספציפי לפלטפורמה, אך הוא מכיל ספריות ספציפיות לפלטפורמה.
הוסף תרמילי Firebase מ- SDK הלא מרוכז.
צור קובץ Pods אם עדיין אין לך:
cd your-app-directory
pod init
לקובץ ה- Podfile שלך, הוסף את תרמילי Firebase שבהם ברצונך להשתמש באפליקציה שלך.
ניתוח מופעל
# Add the Firebase pod for Google Analytics pod 'Firebase/Analytics'
# Add the pods for any other Firebase products you want to use in your app # For example, to use Firebase Authentication and Firebase Realtime Database pod 'Firebase/Auth' pod 'Firebase/Database'ניתוח לא מופעל
# Add the pods for the Firebase products you want to use in your app # For example, to use Firebase Authentication and Firebase Realtime Database pod 'Firebase/Auth' pod 'Firebase/Database'
התקן את התרמילים, ואז פתח את קובץ ה-
.xcworkspace
ב- Xcode.pod install
open your-app.xcworkspace
הוסף מסגרות Firebase מ- SDK הלא מרוכז.
הדרך הקלה ביותר להוסיף מסגרות אלה היא לרוב לגרור אותן מחלון
Finder
ישירות לחלונית Project Navigator של Xcode (חלונית השמאל הקיצוני, כברירת מחדל; או לחץ על סמל הקובץ בפינה השמאלית העליונה של Xcode).הוסף את מסגרת Firebase C ++
firebase.framework
, הנדרשת לשימוש בכל מוצר Firebase.הוסף את המסגרת עבור כל מוצר Firebase שבו ברצונך להשתמש. לדוגמה, כדי להשתמש באימות Firebase, הוסף
firebase_auth.framework
.
חזרה למסוף Firebase, בתהליך העבודה של ההתקנה, לחץ על הבא .
אם הוספת את Analytics, הפעל את האפליקציה שלך כדי לשלוח אימות ל- Firebase ששילבת בהצלחה את Firebase. אחרת, תוכל לדלג על שלב אימות זה.
יומני המכשירים שלך יציגו את אימות Firebase כי האתחול הושלם. אם ניהלת את האפליקציה שלך באמולטור שיש לו גישה לרשת, מסוף Firebase מודיע לך שחיבור האפליקציה שלך הושלם.
אתה מוכן! אפליקציית C ++ שלך רשומה ומוגדרת לשימוש במוצרי Firebase.
ספריות זמינות
למידע נוסף על ספריות C ++ Firebase בתיעוד הפניה ובמהדורת SDK המקור הפתוח שלנו ב- GitHub .
ספריות זמינות עבור iOS
שים לב שספריות C ++ לאנדרואיד רשומות בגרסת Android של דף ההתקנה הזה .
לכל מוצר Firebase יש תלות שונה. הקפד להוסיף את כל התלות הרשומה עבור מוצר Firebase הרצוי לפרויקט Podfile ו- C ++ שלך.
מוצר Firebase | מסגרות ותרמילים |
---|---|
AdMob | (חובה) firebase.framework firebase_admob.framework (חובה) firebase_analytics.framework pod 'Firebase/AdMob', '7.10.0' (חובה) pod 'Firebase/Analytics', '7.10.0' |
ניתוח | (חובה) firebase.framework firebase_analytics.framework pod 'Firebase/Analytics', '7.10.0' |
אימות | (חובה) firebase.framework firebase_auth.framework pod 'Firebase/Auth', '7.10.0' |
Cloud Firestore (בטא) | (חובה) firebase.framework firebase_firestore.framework firebase_auth.framework pod 'Firebase/Firestore', '7.10.0' pod 'Firebase/Auth', '7.10.0' |
פונקציות ענן | (חובה) firebase.framework firebase_functions.framework pod 'Firebase/Functions', '7.10.0' |
הודעות בענן | (חובה) firebase.framework firebase_messaging.framework (מומלץ) firebase_analytics.framework pod 'Firebase/Messaging', '7.10.0' (מומלץ) pod 'Firebase/Analytics', '7.10.0' |
אחסון בענן | (חובה) firebase.framework firebase_storage.framework pod 'Firebase/Storage', '7.10.0' |
קישורים דינמיים | (חובה) firebase.framework firebase_dynamic_links.framework (מומלץ) firebase_analytics.framework pod 'Firebase/DynamicLinks', '7.10.0' (מומלץ) pod 'Firebase/Analytics', '7.10.0' |
מסד נתונים בזמן אמת | (חובה) firebase.framework firebase_database.framework pod 'Firebase/Database', '7.10.0' |
תצורה מרחוק | (חובה) firebase.framework firebase_remote_config.framework (מומלץ) firebase_analytics.framework pod 'Firebase/RemoteConfig', '7.10.0' (מומלץ) pod 'Firebase/Analytics', '7.10.0' |
מידע נוסף להתקנת נייד
שיטה סוחפת
ב- iOS, אירועי יישום מסוימים (כגון פתיחת כתובות אתרים וקבלת התראות) מחייבים את נציג היישום שלך ליישם שיטות ספציפיות. לדוגמה, קבלת הודעה עשויה לדרוש application:didReceiveRemoteNotification:
היישום שלך ליישם את application:didReceiveRemoteNotification:
מכיוון שלכל יישום iOS יש נציג אפליקציות משלו, Firebase משתמשת בשיטוט בשיטה , המאפשר החלפה של שיטה אחת בשנייה, כדי לצרף מטפלים משלה בנוסף לכל מה שאולי היית מיישם.
הספריות Dynamic Links ו- Cloud Messaging צריכות לצרף מטפלים לנציג היישומים באמצעות שיטוט בשיטה. אם אתה משתמש באחד ממוצרי Firebase אלה, בזמן הטעינה, Firebase יזהה את מחלקת ה- AppDelegate
שלך AppDelegate
את השיטות הנדרשות, תוך שרשור שיחה ליישום השיטה הקיימת שלך.
הגדרת זרימת עבודה בשולחן העבודה ( בטא )
כשאתה יוצר משחק, לעיתים קרובות הרבה יותר קל לבדוק את המשחק שלך בפלטפורמות שולחניות, ואז לפרוס ולבדוק במכשירים ניידים בהמשך הפיתוח. כדי לתמוך בזרימת עבודה זו, אנו מספקים קבוצת משנה של ערכות ה- C ++ של Firebase אשר יכולות לפעול ב- Windows, macOS, Linux, ומתוך עורך C ++.
עבור תהליכי עבודה בשולחן העבודה, עליך להשלים את הפעולות הבאות:
- הגדר את פרויקט C ++ שלך עבור CMake.
- צור פרויקט Firebase
- רשום את האפליקציה שלך (iOS או Android) ב- Firebase
- הוסף קובץ תצורה של Firebase בפלטפורמה ניידת
צור גרסת שולחן עבודה של קובץ התצורה של Firebase:
אם הוספת את קובץ Android
google-services.json
- כאשר אתה מריץ את האפליקציה שלך, Firebase מאתר את הקובץ הנייד הזה, ואז יוצר אוטומטית קובץ תצורה של Firebase בשולחן העבודה (google-services-desktop.json
).אם הוספת את הקובץ iOS
GoogleService-Info.plist
- לפני שתפעיל את האפליקציה שלך, עליך להמיר קובץ נייד זה לקובץ תצורה של Firebase בשולחן העבודה . כדי להמיר את הקובץ, הפעל את הפקודה הבאה מאותה ספריה כמו קובץGoogleService-Info.plist
:generate_xml_from_google_services_json.py --plist -i GoogleService-Info.plist
קובץ תצורה זה של שולחן העבודה מכיל את מזהה הפרויקט C ++ שהזנת בתהליך העבודה של הגדרת מסוף Firebase. בקר ב- Understand Firebase Projects למידע נוסף על קבצי תצורה.
הוסף SDKs Firebase לפרויקט C ++ שלך.
השלבים שלהלן משמשים דוגמה כיצד להוסיף כל מוצר Firebase נתמך לפרויקט C ++ שלך. בדוגמה זו אנו עוברים על הוספת Firebase Authentication ו- Firebase Realtime Database.
הגדר את משתנה הסביבה
FIREBASE_CPP_SDK_DIR
למיקום ה- SDK של Firebase C ++ הלא מרוכז.לקובץ
CMakeLists.txt
של הפרויקט שלך, הוסף את התוכן הבא, כולל הספריות עבור מוצרי Firebase שבהם ברצונך להשתמש. לדוגמא, כדי להשתמש באימות Firebase ובסיס נתונים בזמן אמת של Firebase:# Add Firebase libraries to the target using the function from the SDK. add_subdirectory(${FIREBASE_CPP_SDK_DIR} bin/ EXCLUDE_FROM_ALL) # The Firebase C++ library `firebase_app` is required, # and it must always be listed last. # Add the Firebase SDKs for the products you want to use in your app # For example, to use Firebase Authentication and Firebase Realtime Database set(firebase_libs firebase_auth firebase_database firebase_app) target_link_libraries(${target_name} "${firebase_libs}")
הפעל את אפליקציית C ++ שלך.
ספריות זמינות (שולחן עבודה)
ה- SDK של Firebase C ++ כולל תמיכה בזרימת עבודה שולחנית עבור קבוצת משנה של תכונות, המאפשרת להשתמש בחלקים מסוימים של Firebase בבניית שולחן עבודה עצמאית ב- Windows, MacOS ו- Linux.
מוצר Firebase | הפניות לספריה (באמצעות CMake) |
---|---|
אימות | firebase_auth (חובה) firebase_app |
Cloud Firestore (בטא) | firebase_firestore firebase_auth firebase_app |
פונקציות ענן | firebase_functions (חובה) firebase_app |
אחסון בענן | firebase_storage (חובה) firebase_app |
מסד נתונים בזמן אמת | firebase_database (חובה) firebase_app |
תצורה מרחוק | firebase_remote_config (חובה) firebase_app |
Firebase מספקת את ספריות שולחן העבודה הנותרות כיישומי stub (לא פונקציונליים) לנוחיותכם בעת בנייה עבור Windows, MacOS ו- Linux. לכן, אינך צריך לקמפל קוד על מנת להתמקד בשולחן העבודה.
שולחן עבודה בסיסי בזמן אמת
ה- Realtime Database SDK לשולחן העבודה משתמש ב- REST כדי לגשת למסד הנתונים שלך, לכן עליך להצהיר על האינדקסים שבהם אתה משתמש ב- Query::OrderByChild()
על שולחן העבודה או שהמאזינים שלך ייכשלו.
מידע נוסף להתקנת שולחן העבודה
ספריות חלונות
עבור Windows, גרסאות הספריה מסופקות על בסיס הדברים הבאים:
- בניית פלטפורמה: 32 סיביות (x86) לעומת מצב 64 סיביות (x64)
- סביבת זמן ריצה של Windows: Multithreaded / MT לעומת DLL / MD Multithreaded
- היעד: שחרור לעומת ניפוי באגים
שים לב שהספריות הבאות נבדקו באמצעות Visual Studio 2015 ו- 2017.
בעת בניית יישומי שולחן עבודה C ++ ב- Windows, קשר את ספריות Windows SDK הבאות לפרויקט שלך. עיין בתיעוד המהדר שלך למידע נוסף.
ספריית Firebase C ++ | תלות בספריית Windows SDK |
---|---|
אימות | advapi32, ws2_32, crypt32 |
ענן Firestore | advapi32, ws2_32, crypt32, rpcrt4, ole32, shell32 |
פונקציות ענן | advapi32, ws2_32, crypt32, rpcrt4, ole32 |
אחסון בענן | advapi32, ws2_32, crypt32 |
מסד נתונים בזמן אמת | advapi32, ws2_32, crypt32, iphlpapi, psapi, userenv |
תצורה מרחוק | advapi32, ws2_32, crypt32, rpcrt4, ole32 |
ספריות macOS
עבור macOS (דארווין), גרסאות הספרייה מסופקות לפלטפורמת 64 סיביות (x86_64). מסגרות מסופקות גם לנוחיותכם.
שים לב שספריות ה- macOS נבדקו באמצעות Xcode 12.
בעת בניית יישומי C ++ שולחניים ב- MacOS, קשר את הפרויקט הבא לפרויקט שלך:
- ספריית מערכת
pthread
- מסגרת מערכת
CoreFoundation
macOS -
Foundation
במסגרת מערכת MacOS - מסגרת מערכת MacOS
Security
- מסגרת מערכת ה-
GSS
MacOS -
Kerberos
במסגרת מערכת MacOS -
SystemConfiguration
במסגרת מערכת MacOS
עיין בתיעוד המהדר שלך למידע נוסף.
ספריות לינוקס
עבור לינוקס, גרסאות הספריה מסופקות לפלטפורמות 32 סיביות (i386) ו- 64 סיביות (x86_64).
שים לב שספריות לינוקס נבדקו באמצעות GCC 4.8.0, GCC 7.2.0 ו- Clang 5.0 באובונטו.
בעת בניית יישומי שולחן עבודה C ++ ב- Linux, קשר את ספריית המערכת pthread
לפרויקט שלך. עיין בתיעוד המהדר שלך למידע נוסף. אם אתה בונה עם GCC 5 ואילך, הגדר -D_GLIBCXX_USE_CXX11_ABI=0
.
הצעדים הבאים
חקור אפליקציות Firebase לדוגמה .
חקור את ה- SDK של קוד פתוח ב- GitHub .
התכונן להפעלת האפליקציה שלך:
- הגדר התראות תקציב לפרויקט שלך ב- Google Cloud Console.
- עקוב אחר לוח המחוונים לשימוש וחיוב במסוף Firebase כדי לקבל תמונה כוללת על השימוש בפרויקט שלך בכל שירותי Firebase מרובים.
- עיין ברשימת הבדיקות להשקת Firebase .