عزِّز قدرات ألعاب C++ مع حزم SDK لـ Firebase C++ التي توفر لغة C++ بالإضافة إلى حِزم تطوير البرامج (SDK) لمنصّة Firebase
يمكنك الوصول إلى Firebase بالكامل باستخدام رمز C++، بدون الحاجة إلى كتابة التعليمات البرمجية الأصلية للنظام الأساسي. تعمل حزمة تطوير البرامج (SDK) لمنصة Firebase أيضًا على ترجمة العديد من اللغات المصطلحات الاصطلاحية التي يستخدمها Firebase في واجهة أكثر دراية بمطوري C++.
لمزيد من المعلومات عن تحسين أداء ألعابك باستخدام Firebase، انتقِل إلى صفحة ألعاب Firebase:
هل أضفت Firebase بالفعل إلى مشروع C++ الخاص بك؟ تأكد من استخدام أحدث إصدار من حزمة تطوير البرامج (SDK) لـ Firebase C++.
المتطلبات الأساسية
ثبِّت ما يلي:
- Xcode 13.3.1 أو إصدار أحدث
- الإصدار 1.12.0 من CocoaPods أو إصدار أحدث
تأكد من أن مشروعك يستهدف إصدارات النظام الأساسي التالية أو الإصدارات الأحدث:
- الإصدار 13 من نظام التشغيل iOS
- نظام التشغيل tvOS 13
يمكنك إعداد جهاز فعلي أو استخدام المحاكي لتشغيل تطبيقك.
سجِّل الدخول إلى Firebase باستخدام حساب Google الخاص بك.
الخطوة 2: إنشاء مشروع على Firebase
قبل أن تتمكن من إضافة Firebase إلى مشروع C++ ، يجب إنشاء Firebase للاتصال بمشروع C++ الخاص بك. زيارة الموقع يمكنك فهم مشاريع Firebase للحصول على مزيد من المعلومات حول. مشاريع Firebase:
الخطوة 3: تسجيل تطبيقك في Firebase
لاستخدام Firebase في تطبيق Apple، يجب تسجيل تطبيقك في مشروع على Firebase. وعادةً ما يُطلق على تسجيل تطبيقك اسم "الإضافة". تطبيقك إلى مشروعك.
انتقِل إلى وحدة تحكُّم Firebase.
في منتصف صفحة النظرة العامة على المشروع، انقر على رمز +iOS لبدء عملية الإعداد
إذا سبق لك إضافة تطبيق إلى مشروعك على Firebase، انقر على إضافة تطبيق. لعرض خيارات النظام الأساسي.
أدخِل معرّف حزمة التطبيق في الحقل معرّف الحزمة.
(اختياري) أدخِل معلومات أخرى عن التطبيق: اسم التطبيق ورقم تعريف متجر التطبيقات.
انقر على تسجيل التطبيق.
الخطوة 4: إضافة ملف إعداد Firebase
انقر على تنزيل GoogleService-Info.plist للحصول على جهاز Firebase Apple. ملف تهيئة الأنظمة الأساسية.
افتح مشروع C++ في بيئة IDE، ثم اسحب ملف التكوين إلى الجذر. من مشروع C++ الخاص بك.
اختَر إضافة ملف الإعداد إلى جميع الأهداف، إذا طُلب منك ذلك.
لقد انتهيت من عملية الإعداد في "وحدة تحكُّم Firebase". المتابعة إلى يمكنك إضافة حِزم SDK لمنصة Firebase C++ أدناه.
الخطوة 5: إضافة حِزم تطوير البرامج (SDK) لمنصة Firebase C++
الخطوات الواردة في هذا القسم هي مثال على كيفية إضافة منتجات Firebase المتوافقة على Firebase مشروع C++.
يمكنك تنزيل حزمة تطوير البرامج (SDK) لـ Firebase C++، ثم فك ضغط حزمة SDK في مكان مناسب.
وحزمة SDK الخاصة بمنصة Firebase C++ ليست خاصة بالنظام الأساسي، ولكنها تحتوي على المكتبات الخاصة بأنظمة أساسية محددة.
أضِف مجموعات Firebase من حزمة تطوير البرامج (SDK) غير المضغوطة.
أنشئ ملف Podfile إذا لم يكن لديك ملف بالفعل:
cd your-app-directory
pod init
إلى Podfile، أضِف مجموعات Firebase التي تريد استخدامها في التطبيق.
تفعيل الإحصاءات
# Add the Firebase pod for Google Analytics pod 'FirebaseAnalytics'
# 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 'FirebaseAuth' pod 'FirebaseDatabase'عدم تفعيل الإحصاءات
# 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 'FirebaseAuth' pod 'FirebaseDatabase'
ثبِّت المجموعات، ثم افتح ملف
.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"، انقر على التالي في سير عمل الإعداد.
إذا أضفت "إحصاءات Google"، يمكنك تشغيل تطبيقك لإرسال إثبات الملكية إلى Firebase أنك دمجت Firebase بنجاح. بخلاف ذلك، يمكنك تخطي هذا التحقق من هوية المعلِن.
ستعرض سجلّات جهازك رسالة التحقّق من Firebase التي أُجريت مكتملة. إذا شغّلت تطبيقك على محاكي لديه إمكانية الوصول إلى الشبكة، تُعلمك وحدة تحكُّم Firebase باكتمال ربط تطبيقك.
اكتملت عملية الإعداد تم تسجيل تطبيق C++ وإعداده لاستخدام Firebase المنتجات.
المكتبات المتاحة
يمكنك معرفة المزيد عن مكتبات C++ Firebase من خلال المستندات المرجعية وفي حزمة تطوير البرامج (SDK) المفتوحة المصدر على GitHub.
المكتبات المتاحة لأنظمة Apple الأساسية
لاحظ أن مكتبات C++ لنظام Android مدرجة ضمن إصدار Android من هذا، .
يحتوي كل منتج في Firebase على تبعيات مختلفة. تأكد من إضافة جميع أدرجت التبعيات لمنتج Firebase المطلوب في Podfile مشروع C++.
قد يتوافق كل منتج من منتجات Firebase فقط مع مجموعة مختارة من أنظمة التشغيل Apple OS (iOS، tvOS وما إلى ذلك). الاطّلاع على الأنظمة الأساسية المتوافقة مع كل مكتبة مزيد من المعلومات عن C++ وFirebase
منتج Firebase | الإطارات والمجموعات |
---|---|
AdMob |
(مطلوب) firebase.framework firebase_admob.framework (مطلوب) firebase_analytics.framework pod 'FirebaseAdMob', '10.28.1' (مطلوب) pod 'FirebaseAnalytics', '10.28.1'
|
إحصاءات Google |
(مطلوب) firebase.framework firebase_analytics.framework pod 'FirebaseAnalytics', '10.28.1'
|
فحص التطبيقات |
(مطلوب) firebase.framework firebase_app_check.framework pod 'FirebaseAppCheck', '10.28.1'
|
المصادقة |
(مطلوب) firebase.framework firebase_auth.framework pod 'FirebaseAuth', '10.28.1'
|
Cloud Firestore |
(مطلوب) firebase.framework firebase_firestore.framework firebase_auth.framework pod 'FirebaseFirestore', '10.28.1' pod 'FirebaseAuth', '10.28.1'
|
الوظائف السحابية |
(مطلوب) firebase.framework firebase_functions.framework pod 'FirebaseFunctions', '10.28.1'
|
المراسلة عبر السحابة الإلكترونية |
(مطلوب) firebase.framework firebase_messaging.framework (موصى بها) firebase_analytics.framework pod 'FirebaseMessaging', '10.28.1' (موصى به) pod 'FirebaseAnalytics', '10.28.1'
|
التخزين في السحابة الإلكترونية |
(مطلوب) firebase.framework firebase_storage.framework pod 'FirebaseStorage', '10.28.1'
|
الروابط الديناميكية |
(مطلوب) firebase.framework firebase_dynamic_links.framework (موصى بها) firebase_analytics.framework pod 'FirebaseDynamicLinks', '10.28.1' (موصى به) pod 'FirebaseAnalytics', '10.28.1'
|
قاعدة بيانات الوقت الفعلي |
(مطلوب) firebase.framework firebase_database.framework pod 'FirebaseDatabase', '10.28.1'
|
الإعداد عن بُعد |
(مطلوب) firebase.framework firebase_remote_config.framework (موصى بها) firebase_analytics.framework pod 'FirebaseRemoteConfig', '10.28.1' (موصى به) pod 'FirebaseAnalytics', '10.28.1'
|
معلومات إضافية لإعداد الجوال
طريقة التدوير
على نظام التشغيل iOS، قد تتضمن بعض أحداث التطبيقات (مثل فتح عناوين URL وتلقي
(الإشعارات) تتطلب من مفوَّض تطبيقك تنفيذ إجراءات
الطرق. على سبيل المثال، قد يتطلّب تلقّي إشعار تقديم طلب الانضمام.
تفويض تنفيذ application:didReceiveRemoteNotification:
. لأنّ
لكل تطبيق iOS تفويض تطبيق خاص به، ويستخدم Firebase
تغيير طريقة، التي تتيح استبدال طريقة بأخرى،
لإرفاق المعالجات الخاصة بها بالإضافة إلى أي معالجات ربما نفذتها.
تحتاج مكتبات "الروابط الديناميكية" و"المراسلة عبر السحابة الإلكترونية" إلى
لإرفاق المعالجات بتفويض التطبيق باستخدام تغيير الطريقة في حال حذف
إذا كنت تستخدم أيًا من منتجات Firebase هذه، فسيعمل Firebase في وقت التحميل
تحديد فئة AppDelegate
وتوجيه الطرق المطلوبة إليها،
ربط معاودة الاتصال بتنفيذ الطريقة الحالية.
إعداد سير عمل أجهزة كمبيوتر سطح المكتب (إصدار تجريبي)
عند إنشاء لعبة، من الأسهل كثيرًا اختبار لعبتك على أجهزة الكمبيوتر المكتبي. على الأنظمة الأساسية أولاً، ثم النشر واختبارها على الأجهزة الجوّالة في مرحلة لاحقة من عملية التطوير. إلى لسير العمل هذا، نقدم مجموعة فرعية من حزم SDK لمنصة Firebase C++ والتي يمكن تشغيلها على على أنظمة التشغيل Windows وmacOS وLinux ومن داخل محرّر C++.
بالنسبة إلى سير عمل سطح المكتب، يجب إكمال ما يلي:
- قم بتهيئة مشروع C++ لـ CMake.
- إنشاء مشروع على Firebase
- تسجيل تطبيقك (iOS أو Android) في Firebase
- إضافة ملف إعداد Firebase لمنصة الأجهزة الجوّالة
أنشئ إصدار سطح المكتب من ملف إعداد Firebase:
إذا أضفت ملف
google-services.json
لنظام التشغيل Android: عند تشغيل لتطبيقك، يحدد Firebase موقع ملف الجهاز الجوّال هذا، ثم ينشئ ملف إعداد Firebase على سطح المكتب. (google-services-desktop.json
).في حال إضافة الملف
GoogleService-Info.plist
لنظام التشغيل iOS: قبل التشغيل تطبيقك، يجب تحويل ملف الأجهزة الجوّالة هذا إلى ملف في Firebase على كمبيوتر مكتبي. config. لتحويل الملف، شغّل الأمر التالي من نفس الدليل كملفGoogleService-Info.plist
:generate_xml_from_google_services_json.py --plist -i GoogleService-Info.plist
يحتوي ملف تهيئة سطح المكتب هذا على رقم تعريف مشروع C++ الذي أدخلته في سير عمل إعداد وحدة تحكُّم Firebase. زيارة الموقع فهم مشاريع Firebase لمعرفة المزيد حول ملفات التهيئة.
أضف حزم تطوير البرامج (SDK) لمنصّة Firebase إلى مشروع C++ الخاص بك.
الخطوات أدناه هي مثال على كيفية إضافة أي منتج Firebase المتوافق مشروع C++ الخاص بك. في هذا المثال، نستعرض عملية إضافة مصادقة Firebase وقاعدة بيانات Firebase في الوقت الفعلي.
ضبط متغيّر بيئة
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++.
المكتبات المتاحة (أجهزة الكمبيوتر المكتبي)
تتضمّن حزمة تطوير برامج Firebase C++ دعمًا لسير العمل على أجهزة الكمبيوتر المكتبي. لمجموعة فرعية من الميزات، ما يتيح استخدام أجزاء معينة من Firebase في يعتمد إصدار سطح المكتب المستقل على أنظمة التشغيل Windows وmacOS وLinux.
منتج Firebase | مراجع المكتبة (باستخدام أداة CMake) |
---|---|
فحص التطبيقات |
firebase_app_check (مطلوب) firebase_app
|
المصادقة |
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، فيقدّم مكتبات سطح المكتب المتبقية كدليل بديل (غير يعمل). وعمليات التنفيذ للتيسير عند إنشاء أنظمة التشغيل Windows وmacOS وLinux. لذلك، لا تحتاج إلى تجميع الرمز البرمجي بشكل مشروط لاستهداف سطح المكتب.
قاعدة بيانات الوقت الفعلي لسطح المكتب
تستخدم حزمة SDK لقاعدة البيانات في الوقت الفعلي لسطح المكتب REST للوصول إلى قاعدة البيانات الخاصة بك، لذا يجب عليك
الإعلان عن الفهارس التي
تستخدمها مع Query::OrderByChild()
على الكمبيوتر المكتبي وإلّا سيتعذّر على المستمعين
معلومات إضافية لإعداد سطح المكتب
مكتبات Windows
بالنسبة إلى نظام التشغيل Windows، يتم توفير إصدارات المكتبة استنادًا إلى ما يلي:
- نظام التشغيل: وضع 32 بت (x86) مقابل 64 بت (x64)
- بيئة وقت تشغيل Windows: Multithreaded / MT مقابل Multithreaded DLL /MD
- الهدف: الإصدار مقابل تصحيح الأخطاء
تجدر الإشارة إلى أنّه تمّ اختبار المكتبات التالية باستخدام Visual Studio 2015 و2017.
عند إنشاء تطبيقات سطح مكتب C++ على Windows، قم بربط حزمة SDK التالية بنظام Windows والمكتبات لمشروعك. راجع وثائق برنامج التجميع للتعرف على المزيد المعلومات.
مكتبة Firebase C++ | ملحقات مكتبة SDK لنظام التشغيل Windows |
---|---|
فحص التطبيقات | advapi32, ws2_32, crypt32 |
المصادقة | advapi32, ws2_32, crypt32 |
Cloud Firestore | advapi32, ws2_32, crypt32, rpcrt4, ole32, shell32 |
وظائف السحابة الإلكترونية | advapi32, ws2_32, crypt32, rpcrt4, ole32 |
Cloud Storage | advapi32, ws2_32, crypt32 |
قاعدة بيانات الوقت الفعلي | advapi32, ws2_32, crypt32, iphlpapi, psapi, userenv |
الإعداد عن بُعد | advapi32, ws2_32, crypt32, rpcrt4, ole32 |
مكتبات macOS
بالنسبة إلى نظام التشغيل macOS (Darwin)، تتوفّر إصدارات المكتبة للإصدار 64 بت (x86_64). بدون خادم. يتم أيضًا توفير أطر العمل لتيسير الأمر عليك.
يُرجى العلم أنّ مكتبات macOS تم اختبارها باستخدام Xcode. 13.3.1.
عند إنشاء تطبيقات سطح مكتب C++ على macOS، قم بربط ما يلي بمشروعك:
- مكتبة النظام
pthread
CoreFoundation
إطار عمل نظام التشغيل macOSFoundation
إطار عمل نظام التشغيل macOSSecurity
إطار عمل نظام التشغيل macOSGSS
إطار عمل نظام التشغيل macOSKerberos
إطار عمل نظام التشغيل macOSSystemConfiguration
إطار عمل نظام التشغيل macOS
للحصول على مزيد من المعلومات، يمكنك الرجوع إلى وثائق برنامج التجميع.
مكتبات Linux
بالنسبة إلى نظام التشغيل Linux، تتوفّر إصدارات المكتبة لأجهزة 32 بت (i386) و64 بت (x86_64). الأساسية.
تجدر الإشارة إلى أنّه تم اختبار مكتبات Linux باستخدام الإصدارات 4.8.0 من GCC وGCC 7.2.0 و Clang 5.0 على Ubuntu.
عند إنشاء تطبيقات سطح مكتب C++ على Linux، يمكنك ربط مكتبة النظام pthread
بـ
لمشروعك. للحصول على مزيد من المعلومات، يمكنك الرجوع إلى وثائق برنامج التجميع. في حال حذف
التي تقوم بإنشائها باستخدام GCC 5 أو أحدث، حدد -D_GLIBCXX_USE_CXX11_ABI=0
.
الخطوات التالية
استكشِف نماذج تطبيقات Firebase.
استكشف حزمة SDK مفتوحة المصدر في GitHub.
الاستعداد لإطلاق تطبيقك:
- إعداد الميزانية تنبيهات لمشروعك في Google Cloud Console.
- يمكنك مراقبة الاستخدام والفوترة لوحة البيانات في وحدة تحكم Firebase للحصول على صورة شاملة عبر خدمات Firebase المتعددة.
- راجِع قائمة التحقّق الخاصة بإطلاق Firebase.