iOS ve Android için Firebase'in üzerinde bir C++ arabirimi sağlayan Firebase C++ SDK'larımızla C++ oyunlarınızı güçlendirin.
Platforma özgü herhangi bir kod yazmak zorunda kalmadan Firebase'e tamamen C++ kodunuzdan erişin. Firebase SDK ayrıca Firebase tarafından kullanılan dile özgü birçok deyimi C++ geliştiricilerinin daha aşina olduğu bir arayüze çevirir.
Firebase oyunlar sayfamızda oyunlarınızı Firebase ile güçlendirme hakkında daha fazla bilgi edinin.
Firebase'i C++ projenize zaten eklediniz mi? Firebase C++ SDK'nın en son sürümünü kullandığınızdan emin olun.
Önkoşullar
Aşağıdakileri yükleyin:
- Xcode 13.3.1 veya üstü
- CocoaPods 1.10.0 veya üzeri
Projenizin aşağıdaki platform sürümlerini veya sonraki sürümlerini hedeflediğinden emin olun:
- iOS 11
Uygulamanızı çalıştırmak için fiziksel bir iOS cihazı kurun veya iOS simülatörünü kullanın.
Bulut Mesajlaşma'yı kullanmak istiyor musunuz?
Apple platformlarında Bulut Mesajlaşma için ön koşullar şunlardır:
- Fiziksel bir Apple aygıtı kurun.
- Apple Geliştirici hesabınız için bir Apple Anında Bildirim Kimlik Doğrulama Anahtarı edinin.
- Xcode'da App > Capabilities altında Push Bildirimlerini etkinleştirin.
Google hesabınızı kullanarak Firebase'de oturum açın.
2. Adım : Bir Firebase projesi oluşturun
Firebase'i C++ projenize eklemeden önce, C++ projenize bağlanmak için bir Firebase projesi oluşturmanız gerekir. Firebase projeleri hakkında daha fazla bilgi edinmek için Firebase Projelerini Anlayın sayfasını ziyaret edin.
Bir Firebase projesi oluşturun
Firebase konsolunda Proje ekle'yi tıklayın.
Firebase kaynaklarını mevcut bir Google Cloud projesine eklemek için proje adını girin veya açılır menüden seçin.
Yeni bir proje oluşturmak için istediğiniz proje adını girin. Proje adının altında görüntülenen proje kimliğini de isteğe bağlı olarak düzenleyebilirsiniz.
İstenirse Firebase şartlarını inceleyin ve kabul edin.
Devam'ı tıklayın.
(İsteğe bağlı) Aşağıdaki Firebase ürünlerinden herhangi birini kullanarak en iyi deneyimi yaşamanızı sağlayan projeniz için Google Analytics'i kurun:
Ya mevcut bir Google Analytics hesabını seçin ya da yeni bir hesap oluşturun.
Yeni bir hesap oluşturursanız, Analytics raporlama konumunuzu seçin ve ardından projeniz için veri paylaşımı ayarlarını ve Google Analytics şartlarını kabul edin.
Proje oluştur'u (veya mevcut bir Google Cloud projesi kullanıyorsanız Firebase Ekle'yi ) tıklayın.
Firebase, Firebase projeniz için kaynakları otomatik olarak sağlar. İşlem tamamlandığında, Firebase konsolundaki Firebase projenizin genel bakış sayfasına yönlendirileceksiniz.
3. Adım : Uygulamanızı Firebase'e kaydedin
Firebase'i Apple uygulamanızda kullanmak için uygulamanızı Firebase projenize kaydetmeniz gerekir. Uygulamanızı kaydetmeye genellikle uygulamanızı projenize "eklemek" denir.
Firebase konsoluna gidin.
Projeye genel bakış sayfasının ortasında, kurulum iş akışını başlatmak için iOS+ simgesine tıklayın.
Firebase projenize zaten bir uygulama eklediyseniz, platform seçeneklerini görüntülemek için Uygulama ekle'yi tıklayın.
Paket kimliği alanına uygulamanızın paket kimliğini girin.
Paket kimliği nedir ve onu nerede bulursunuz?
Paket kimliği , Apple ekosistemindeki bir uygulamayı benzersiz şekilde tanımlar.
Paket kimliğinizi bulun: projenizi Xcode'da açın, proje gezgininde en üst düzey uygulamayı seçin, ardından Genel sekmesini seçin.
Paket Tanımlayıcı alanının değeri, paket kimliğidir (örneğin,
com.yourcompany.yourproject).
Paket kimliği değerinin büyük/küçük harf duyarlı olduğunu ve Firebase projenize kaydolduktan sonra bu Firebase uygulaması için değiştirilemeyeceğini unutmayın.
(İsteğe bağlı) Diğer uygulama bilgilerini girin: Uygulama takma adı ve Uygulama Mağazası Kimliği .
Firebase'de Uygulama takma adı ve Uygulama Mağazası Kimliği nasıl kullanılır?
Uygulama takma adı : Yalnızca Firebase konsolunda görebileceğiniz dahili, kullanışlı bir tanımlayıcı
App Store Kimliği : Kullanıcıları App Store sayfanıza yönlendirmek için Firebase Dynamic Links ve dönüşüm etkinliklerini Google Ads'e aktarmak için Google Analytics tarafından kullanılır. Uygulamanızın henüz bir App Store Kimliği yoksa, kimliği daha sonra Proje ayarlarınızdan ekleyebilirsiniz.
Uygulamayı kaydet'i tıklayın.
Adım 4 : Firebase yapılandırma dosyasını ekleyin
Firebase Apple platformları yapılandırma dosyanızı almak için GoogleService-Info.plist'i İndir'i tıklayın.
Bu yapılandırma dosyası hakkında bilmeniz gerekenler nelerdir?
Firebase yapılandırma dosyası, projeniz için benzersiz, ancak gizli olmayan tanımlayıcılar içerir. Bu yapılandırma dosyası hakkında daha fazla bilgi edinmek için Firebase Projelerini Anlayın sayfasını ziyaret edin.
Firebase yapılandırma dosyanızı istediğiniz zaman yeniden indirebilirsiniz.
Yapılandırma dosyası adının sonuna
(2)gibi ek karakterler eklenmediğinden emin olun.
C++ projenizi bir IDE'de açın, ardından yapılandırma dosyanızı C++ projenizin kök dizinine sürükleyin.
İstenirse, yapılandırma dosyasını tüm hedeflere eklemek için seçin.
Firebase konsolunda kurulum görevlerini tamamladınız. Aşağıdaki Firebase C++ SDK'larını Eklemeye devam edin.
Adım 5 : Firebase C++ SDK'larını ekleyin
Bu bölümdeki adımlar, Firebase C++ projenize desteklenen Firebase ürünlerini nasıl ekleyeceğinizi gösteren bir örnektir.
Firebase C++ SDK'yı indirin, ardından SDK'yı uygun bir yerde açın.
Firebase C++ SDK, platforma özel değildir, ancak platforma özel kitaplıklar içerir.
Sıkıştırılmamış SDK'dan Firebase bölmeleri ekleyin.
Henüz yoksa bir Pod dosyası oluşturun:
cd your-app-directory
pod init
Pod dosyanıza, uygulamanızda kullanmak istediğiniz Firebase bölmelerini ekleyin.
Analytics etkinleştirildi
# 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'
Analytics etkinleştirilmedi
# 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'
Bölmeleri kurun, ardından
.xcworkspacedosyasını Xcode'da açın.
pod installtutucu17 l10n-yer
open your-app.xcworkspace
Sıkıştırılmamış SDK'dan Firebase çerçeveleri ekleyin.
Bu çerçeveleri eklemenin en kolay yolu genellikle onları bir
Finderpenceresinden doğrudan Xcode'un Proje Gezgini bölmesine sürüklemektir (varsayılan olarak en soldaki bölme veya Xcode'un sol üst köşesindeki dosya simgesine tıklayın).
Herhangi bir Firebase ürününü kullanmak için gerekli olan Firebase C++ çerçevesi
firebase.frameworkekleyin.
Kullanmak istediğiniz her Firebase ürünü için çerçeve ekleyin. Örneğin, Firebase Authentication'ı kullanmak için
firebase_auth.frameworkekleyin.
Firebase konsolunda, kurulum iş akışında İleri 'yi tıklayın.
Analytics'i eklediyseniz, Firebase'i başarıyla entegre ettiğinize dair doğrulamayı Firebase'e göndermek için uygulamanızı çalıştırın. Aksi takdirde, bu doğrulama adımını atlayabilirsiniz.
Cihaz günlükleriniz, başlatmanın tamamlandığına dair Firebase doğrulamasını görüntüler. Uygulamanızı ağ erişimi olan bir öykünücüde çalıştırdıysanız, Firebase konsolu , uygulama bağlantınızın tamamlandığını size bildirir.
Hazırsınız! C++ uygulamanız kayıtlı ve Firebase ürünlerini kullanacak şekilde yapılandırıldı.
Kullanılabilir kitaplıklar
iOS için kullanılabilir kitaplıklar
Android için C++ kitaplıklarının bu kurulum sayfasının Android sürümünde listelendiğini unutmayın.
Her Firebase ürününün farklı bağımlılıkları vardır. İstediğiniz Firebase ürünü için listelenen tüm bağımlılıkları Podfile ve C++ projenize eklediğinizden emin olun.
|Firebase ürünü||Çerçeveler ve Kapsüller|
|AdMob|| (gerekli) |
(gerekli)
(gerekli)
|Analitik|| (gerekli) |
|kimlik doğrulama|| (gerekli) |
|Bulut Firestore|| (gerekli) |
|Bulut İşlevleri|| (gerekli) |
|Bulut Mesajlaşma|| (gerekli) |
(önerilir)
(önerilen)
|Bulut depolama|| (gerekli) |
|Dinamik Bağlantılar|| (gerekli) |
(önerilir)
(önerilen)
|Gerçek Zamanlı Veritabanı|| (gerekli) |
|Uzak Yapılandırma|| (gerekli) |
(önerilir)
(önerilen)
Mobil kurulum için ek bilgiler
Yöntem swizzling
iOS'ta bazı uygulama olayları (URL'leri açma ve bildirim alma gibi), uygulama temsilcinizin belirli yöntemleri uygulamasını gerektirir. Örneğin, bir bildirim almak, uygulama temsilcinizin
application:didReceiveRemoteNotification: uygulamasını uygulamasını gerektirebilir. Her iOS uygulamasının kendi uygulama temsilcisi olduğundan, Firebase, uygulamış olabileceğiniz herhangi bir yönteme ek olarak kendi işleyicilerini eklemek için bir yöntemin diğeriyle değiştirilmesine olanak tanıyan yöntem swizzling kullanır.
Dynamic Links ve Cloud Messaging kitaplıklarının, yöntem swizzling kullanarak uygulama temsilcisine işleyiciler eklemesi gerekir. Bu Firebase ürünlerinden herhangi birini kullanıyorsanız, yükleme zamanında Firebase,
AppDelegate sınıfınızı tanımlayacak ve gerekli yöntemleri bu sınıfa aktaracak ve mevcut yöntem uygulamanıza bir çağrı zincirleyerek geri çağıracaktır.
Bir masaüstü iş akışı kurun ( beta )
Bir oyun oluştururken, oyununuzu önce masaüstü platformlarında test etmek, ardından geliştirme aşamasında mobil cihazlarda dağıtmak ve test etmek genellikle çok daha kolaydır. Bu iş akışını desteklemek için Windows, macOS, Linux ve C++ düzenleyicisinin içinden çalışabilen bir Firebase C++ SDK alt kümesi sağlıyoruz.
Masaüstü iş akışları için aşağıdakileri tamamlamanız gerekir:
- C++ projenizi CMake için yapılandırın.
- Bir Firebase projesi oluşturun
- Uygulamanızı (iOS veya Android) Firebase'e kaydedin
- Bir mobil platform Firebase yapılandırma dosyası ekleyin
Firebase yapılandırma dosyasının bir masaüstü sürümünü oluşturun:
Android
google-services.jsondosyasını eklediyseniz - Uygulamanızı çalıştırdığınızda, Firebase bu mobil dosyayı bulur ve ardından otomatik olarak bir masaüstü Firebase yapılandırma dosyası (
google-services-desktop.json) oluşturur.
iOS
GoogleService-Info.plistdosyasını eklediyseniz — Uygulamanızı çalıştırmadan önce bu mobil dosyayı bir masaüstü Firebase yapılandırma dosyasına dönüştürmeniz gerekir. Dosyayı dönüştürmek için,
GoogleService-Info.plistdosyanızla aynı dizinden aşağıdaki komutu çalıştırın:
generate_xml_from_google_services_json.py --plist -i GoogleService-Info.plist
Bu masaüstü yapılandırma dosyası, Firebase konsol kurulum iş akışına girdiğiniz C++ proje kimliğini içerir. Yapılandırma dosyaları hakkında daha fazla bilgi edinmek için Firebase Projelerini Anlayın sayfasını ziyaret edin.
C++ projenize Firebase SDK'ları ekleyin.
Aşağıdaki adımlar, desteklenen herhangi bir Firebase ürününün C++ projenize nasıl ekleneceğinin bir örneğidir. Bu örnekte, Firebase Authentication ve Firebase Realtime Database'i ekleyerek ilerliyoruz.
FIREBASE_CPP_SDK_DIRortam değişkeninizi sıkıştırılmamış Firebase C++ SDK'sının konumuna ayarlayın.
Projenizin
CMakeLists.txtdosyasına, kullanmak istediğiniz Firebase ürünleri için kitaplıklar dahil olmak üzere aşağıdaki içeriği ekleyin. Örneğin, Firebase Authentication ve Firebase Realtime Database'i kullanmak için:
# 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++ uygulamanızı çalıştırın.
Kullanılabilir kitaplıklar (masaüstü)
Firebase C++ SDK, bir dizi özellik için masaüstü iş akışı desteği içerir ve Firebase'in belirli bölümlerinin Windows, macOS ve Linux'ta bağımsız masaüstü yapılarında kullanılmasına olanak tanır.
|Firebase ürünü||Kitaplık referansları (CMake kullanarak)|
|kimlik doğrulama|| |
(gerekli)
|Bulut Firestore|| |
|Bulut İşlevleri|| |
(gerekli)
|Bulut depolama|| |
(gerekli)
|Gerçek Zamanlı Veritabanı|| |
(gerekli)
|Uzak Yapılandırma|| |
(gerekli)
Firebase, Windows, macOS ve Linux için derlerken kolaylık sağlamak için kalan masaüstü kitaplıklarını saplama (işlevsel olmayan) uygulamalar olarak sağlar. Bu nedenle, masaüstünü hedeflemek için koşullu olarak kod derlemeniz gerekmez.
Gerçek Zamanlı Veritabanı masaüstü
Masaüstü için Realtime Database SDK, veritabanınıza erişmek için REST kullanır, bu nedenle masaüstünde
Query::OrderByChild() ile kullandığınız dizinleri bildirmeniz gerekir, aksi takdirde dinleyicileriniz başarısız olur.
Masaüstü kurulumu için ek bilgiler
Windows kitaplıkları
Windows için kitaplık sürümleri aşağıdakilere dayalı olarak sağlanır:
- Oluşturma platformu: 32 bit (x86) vs 64 bit (x64) modu
- Windows çalışma zamanı ortamı: Multithreaded / MT vs Multithreaded DLL /MD
- Hedef: Yayın ve Hata Ayıklama
Aşağıdaki kitaplıkların Visual Studio 2015 ve 2017 kullanılarak test edildiğini unutmayın.
Windows'ta C++ masaüstü uygulamaları oluştururken, aşağıdaki Windows SDK kitaplıklarını projenize bağlayın. Daha fazla bilgi için derleyici belgelerinize bakın.
|Firebase C++ Kitaplığı||Windows SDK kitaplığı bağımlılıkları|
|kimlik doğrulama|| |
|Bulut Firestore|| |
|Bulut İşlevleri|| |
|Bulut depolama|| |
|Gerçek Zamanlı Veritabanı|| |
|Uzak Yapılandırma|| |
macOS kitaplıkları
macOS (Darwin) için 64 bit (x86_64) platformu için kitaplık sürümleri sağlanır. Size kolaylık sağlamak için çerçeveler de sağlanmıştır.
macOS kitaplıklarının Xcode 13.3.1 kullanılarak test edildiğini unutmayın.
macOS üzerinde C++ masaüstü uygulamaları oluştururken aşağıdakileri projenize bağlayın:
-
pthreadsistem kitaplığı
-
CoreFoundationmacOS sistem çerçevesi
-
FoundationmacOS sistem çerçevesi
-
SecuritymacOS sistem çerçevesi
-
GSSmacOS sistem çerçevesi
-
KerberosmacOS sistem çerçevesi
-
SystemConfigurationmacOS sistem çerçevesi
Daha fazla bilgi için derleyici belgelerinize bakın.
Linux kitaplıkları
Linux için, 32 bit (i386) ve 64 bit (x86_64) platformları için kitaplık sürümleri sağlanır.
Linux kitaplıklarının Ubuntu'da GCC 4.8.0, GCC 7.2.0 ve Clang 5.0 kullanılarak test edildiğini unutmayın.
Linux üzerinde C++ masaüstü uygulamaları oluştururken,
pthread sistem kitaplığını projenize bağlayın. Daha fazla bilgi için derleyici belgelerinize bakın. GCC 5 veya sonraki bir sürümle derleme yapıyorsanız,
-D_GLIBCXX_USE_CXX11_ABI=0 tanımlayın.
Sonraki adımlar
Örnek Firebase uygulamalarını keşfedin.
GitHub'da açık kaynak SDK'yı keşfedin.
Uygulamanızı başlatmaya hazırlanın: