Check out what’s new from Firebase@ Google I/O 2021, and join our alpha program for early access to the new Remote Config personalization feature. Learn more

Firebase projelerini anlama

Bu sayfa, Firebase projeleriyle ilgili birkaç önemli kavramın kısa bir özetini sunar. Mümkün olduğunda, özellikler, hizmetler ve hatta diğer platformlar hakkında daha ayrıntılı bilgi bulmak için bağlantıları izleyin. Bu sayfanın altında, Firebase projeleri için genel en iyi uygulamaların bir listesini bulun.

Firebase projeleri, uygulamaları ve ürünleri arasındaki ilişki

Bir Firebase projesi, Firebase için en üst düzey varlıktır. Bir projede iOS, Android veya web uygulamalarınızı kaydettirerek Firebase uygulamaları oluşturursunuz. Uygulamalarınızı Firebase'e kaydettirdikten sonra Analytics, Cloud Firestore, Performance Monitoring veya Remote Config gibi istediğiniz sayıda Firebase ürünü için Firebase SDK'larını ekleyebilirsiniz.

Başlarken kılavuzlarında ( iOS | Android | web | Unity | C++ ) bu işlem hakkında daha ayrıntılı bilgi edinin.

Firebase projeleri ile Google Cloud arasındaki ilişki

Firebase konsolunda yeni bir Firebase projesi oluşturduğunuzda, aslında perde arkasında bir Google Cloud projesi oluşturuyorsunuz. Bir Google Cloud projesini veri, kod, yapılandırma ve hizmetler için sanal bir kapsayıcı olarak düşünebilirsiniz. Firebase projesi, Firebase'e özel ek yapılandırmalara ve hizmetlere sahip bir Google Cloud projesidir. Hatta önce bir Google Cloud projesi oluşturabilir, ardından projeye Firebase'i ekleyebilirsiniz.

Bir Firebase projesi yana bir Google Cloud projedir:

Bir Firebase projesi oluşturma ve uygulamaları kaydetme

Bir Firebase projesi oluşturabilir ve uygulamaları Firebase konsolunda (veya ileri düzey kullanım durumları için Firebase Management REST API veya Firebase CLI aracılığıyla ) kaydedebilirsiniz . Bir proje oluşturduğunuzda ve uygulamaları kaydettiğinizde, bazı kurumsal kararlar almanız ve yerel projelerinize Firebase'e özel yapılandırma bilgileri eklemeniz gerekir.

Bir proje oluşturmadan ve uygulamaları kaydetmeden önce bazı genel proje düzeyindeki en iyi uygulamaları (bu sayfanın alt kısmında) gözden geçirdiğinizden emin olun.

proje adı

Bir proje oluşturduğunuzda, bir proje adı sağlarsınız . Bu tanımlayıcı bir proje için yalnızca dahili adıdır Firebase konsolunda , Google Cloud Console ve Firebase CLI . Proje adı, herkesin görebileceği herhangi bir Firebase veya Google Cloud ürününde, hizmetinde veya kaynağında gösterilmez; sadece birden fazla proje arasında daha kolay ayrım yapmanıza yardımcı olur.

Sen herhangi bir zamanda bir proje adı düzenleyebilir Proje ayarları Firebase konsolunun. Proje adı üst bölmede görüntülenir.

proje numarası

Bir Firebase projesinin (ve ilişkili Google Cloud projesinin ) bir proje numarası vardır . Bu, proje için Google tarafından atanan küresel benzersiz standart tanımlayıcıdır. Entegrasyonları yapılandırırken ve/veya Firebase, Google veya üçüncü taraf hizmetlere API çağrıları yaparken bu tanımlayıcıyı kullanın.

API çağrıları ve proje numarası

Birçok API çağrısı için bir proje için benzersiz bir tanımlayıcı eklemeniz gerekir. Birçok API proje kimliğini kabul etse de , Firebase, Google veya üçüncü taraf hizmetlere API çağrıları yapmak için proje numarasını kullanmanız önerilir.

Google'ın AIP 2510 standardında proje tanımlayıcılarını, özellikle proje numarasını kullanma hakkında daha fazla bilgi edinin.

Proje numarasını bulun

  • Firebase konsolu: Proje ayarları öğesini tıklayın. Proje numarası üst bölmede görüntülenir.

  • firebase projects:list CLI: firebase projects:list çalıştırın firebase projects:list . Proje numarası, hesabınızla ilişkili tüm Firebase projeleriyle birlikte görüntülenir.

  • Firebase Management REST API: projects.list çağırın. Yanıt gövdesi, FirebaseProject nesnesindeki proje numarasını içerir.

proje kimliği

Bir Firebase projesinin (ve ilişkili Google Cloud projesinin ) bir proje kimliği vardır . Bu, tüm Firebase ve Google Cloud genelinde proje için kullanıcı tanımlı benzersiz bir tanımlayıcıdır. Bir Firebase projesi oluşturduğunuzda, Firebase projeye otomatik olarak benzersiz bir kimlik atar, ancak proje kurulumu sırasında bunu düzenleyebilirsiniz. Bu tanımlayıcı genellikle projeye referans vermek için bir kolaylık takma adı olarak ele alınmalıdır.

Bir projeyi silerseniz, proje kimliği de silinir ve bir daha asla başka bir proje tarafından kullanılamaz.

Firebase kaynakları ve proje kimliği

Proje kimliği, herkesin görebileceği Firebase kaynaklarında görüntülenir, örneğin:

  • Varsayılan Barındırma alt etki alanı — PROJECT_ID .web.app ve PROJECT_ID .firebaseapp.com
  • Standart Gerçek Zamanlı Veri Tabanı URL - PROJECT_ID -default-rtdb.firebaseio.com veya PROJECT_ID -default-rtdb. REGION_CODE .firebasedatabase.app
  • Varsayılan Bulut Depolama PROJECT_ID .appspot.com adı — PROJECT_ID .appspot.com

Yukarıda belirtilen kaynakların tümü için varsayılan olmayan örnekler oluşturabilirsiniz. Varsayılan olmayanların genel olarak görülebilen adları tamamen özelleştirilebilir. Özel etki alanlarını Firebase tarafından barındırılan bir siteye bağlayabilir , Gerçek Zamanlı Veritabanını parçalayabilir ve birden çok Bulut Depolama grubu oluşturabilirsiniz (platforma özel Başlarken sayfasını ziyaret edin).

Firebase CLI ve proje kimliği

Bazı kullanım durumlarında, aynı yerel uygulama dizini ile ilişkili birden fazla Firebase projeniz olabilir. Bu durumlarda, --project CLI'yi kullandığınızda, etkileşim kurmak istediğiniz firebase projesini iletmek için --project bayrağını firebase komutlarıyla --project gerekir.

Ayrıca, proje kimliklerini hatırlamak zorunda kalmamak için her Firebase projesi için bir proje takma adı da ayarlayabilirsiniz.

API çağrıları ve proje kimliği

Birçok API çağrısı için bir proje için benzersiz bir tanımlayıcı eklemeniz gerekir. Birçok API proje kimliğini kabul etse de, Firebase, Google veya üçüncü taraf hizmetlere API çağrıları yapmak için proje numarasını kullanmanız önerilir.

Google'ın AIP 2510 standardında proje tanımlayıcılarını, özellikle proje numarasını kullanma hakkında daha fazla bilgi edinin.

Proje kimliğini bulun

  • Firebase konsolu: Proje ayarları öğesini tıklayın. Proje kimliği üst bölmede görüntülenir.

  • firebase projects:list CLI: firebase projects:list çalıştırın firebase projects:list . Proje kimliği, hesabınızla ilişkili tüm Firebase projeleriyle birlikte görüntülenir.

  • Firebase Management REST API: projects.list çağırın. Yanıt gövdesi, FirebaseProject nesnesindeki proje kimliğini içerir.

Firebase yapılandırma dosyaları ve nesneleri

Bir uygulamayı bir Firebase projesine kaydettiğinizde, Firebase konsolu, doğrudan yerel uygulama dizininize eklediğiniz bir Firebase yapılandırma dosyası (iOS/Android uygulamaları) veya bir yapılandırma nesnesi (web uygulamaları) sağlar.

  • iOS uygulamaları için bir GoogleService-Info.plist yapılandırma dosyası GoogleService-Info.plist .
  • Android uygulamaları için bir google-services.json yapılandırma dosyası eklersiniz.
  • Web uygulamaları için bir Firebase yapılandırma nesnesi eklersiniz.

İstediğiniz zaman bir uygulamanın Firebase yapılandırma dosyasını veya nesnesini alabilirsiniz .

Bir Firebase yapılandırma dosyası veya nesnesi, bir uygulamayı belirli bir Firebase projesi ve kaynaklarıyla (veritabanları, depolama paketleri vb.) ilişkilendirir. Yapılandırma, Firebase sunucu API'leriyle iletişim kurmak ve istemci verilerini Firebase projesi ve Firebase uygulamasıyla ilişkilendirmek için Firebase ve Google hizmetlerinin gerektirdiği parametreler olan "Firebase seçenekleri"ni içerir. Gerekli, minimum "Firebase seçenekleri" şunlardır:

  • API anahtarı : özel kullanıcı verilerine erişmesi gerekmeyen belirli API'leri çağırırken kullanılan basit bir şifreli dize (örnek değer: AIzaSyDOCAbC123dEf456GhI789jKl012-MnO )

  • Proje Kimliği : Tüm Firebase ve Google Cloud genelinde proje için kullanıcı tanımlı benzersiz bir tanımlayıcı. Bu tanımlayıcı, bazı Firebase kaynaklarının URL'lerinde veya adlarında görünebilir, ancak genellikle projeye atıfta bulunmak için bir kolaylık takma adı olarak ele alınmalıdır. (örnek değer: myapp-project-123 )

  • Uygulama Kimliği ("AppID") : Platforma özgü bir biçimde tüm Firebase genelinde Firebase uygulaması için benzersiz tanımlayıcı:

    • Firebase iOS uygulamaları: GOOGLE_APP_ID (örnek değer: 1:1234567890:ios:321abc456def7890 )
      Bu bir Apple paketi kimliği değildir.
    • mobilesdk_app_id Android uygulamaları: mobilesdk_app_id (örnek değer: 1:1234567890:android:321abc456def7890 )
      Bu bir Android paket adı veya Android uygulaması kimliği değil.
    • Firebase Web uygulamaları: appId (örnek değer: 1:65211879909:web:3ae38ef1cdcb2e01fe5f0c )

Uygulamanın platforma özel kimliği (iOS paket kimliği veya Android paket adı) ve API Anahtarı, proje kimliği, Gerçek Zamanlı Veritabanı URL'si ve Cloud Storage paketi adı. Bunu göz önünde bulundurarak , Realtime Database , Cloud Firestore ve Cloud Storage'daki verilerinizi ve dosyalarınızı korumak için Firebase Güvenlik Kurallarını kullanın.

Açık kaynak projeleri için genellikle uygulamanın Firebase yapılandırma dosyasını veya nesnesini kaynak kontrolüne dahil etmenizi önermiyoruz çünkü çoğu durumda kullanıcılarınız kendi Firebase projelerini oluşturmalı ve uygulamalarını kendi Firebase kaynaklarına yönlendirmelidir (kendi Firebase yapılandırmaları aracılığıyla). dosya veya nesne).

Firebase projesini yönetme

Bir Firebase projesini nasıl yönettiğinizi etkileyebilecek hususlar için genel proje düzeyindeki en iyi uygulamaları (bu sayfanın alt kısmında) gözden geçirdiğinizden emin olun.

Bir projeyi yönetmek için araçlar

Firebase konsolu

Firebase konsolu , Firebase ürünlerini, uygulamalarını ve proje düzeyindeki ayarları yönetmek için en zengin ortamı sunar.

Firebase konsolu - projeye genel bakış ekranı

Konsolun sol tarafındaki panel, üst düzey kategorilere göre düzenlenen Firebase ürünlerini listeler. Tıklayarak bir projenin ayarları sol yan panel, erişim üst kısmında . Bir projenin ayarları arasında entegrasyonlar , erişim izinleri ve faturalandırma bulunur .

Konsolun ortasında, çeşitli uygulama türlerini kaydetmek için kurulum iş akışlarını başlatan düğmeler görüntülenir. Firebase'i kullanmaya başladıktan sonra konsolun ana alanı, kullandığınız ürünlerle ilgili istatistikleri görüntüleyen bir panoya dönüşür.

Firebase CLI (bir komut satırı aracı)

Firebase ayrıca Firebase Barındırma ve Firebase için Bulut İşlevleri gibi belirli Firebase ürünlerini yapılandırmak ve yönetmek için Firebase CLI'yi sunar.

CLI'yi kurduktan sonra, global firebase komutuna erişiminiz olur. Yerel uygulama dizininizi bir Firebase projesine bağlamak için CLI'yi kullanın, ardından Firebase tarafından barındırılan içeriğin yeni sürümlerini veya işlev güncellemelerini dağıtın .

Firebase Management REST API

Firebase Management REST API'yi kullanarak bir Firebase projesini programlı olarak yönetebilirsiniz. Örneğin, bir uygulamayı bir projeye programlı olarak kaydedebilir veya halihazırda kayıtlı olan uygulamaları listeleyebilirsiniz ( iOS | Android | web ).

Genel en iyi uygulamalar

Bir projeye uygulama ekleme

Bir projedeki tüm uygulamaların , son kullanıcı açısından aynı uygulamanın platform varyantları olduğundan emin olun . Aynı uygulama veya oyunun iOS, Android ve web sürümlerini aynı Firebase projesine kaydetmeniz önerilir. Bir projedeki tüm uygulamalar genellikle aynı Firebase kaynaklarını (veritabanı, depolama paketleri vb.) paylaşır.

Farklı iOS paket kimliklerine veya tanımlanmış Android paket adlarına sahip birden fazla derleme varyantınız varsa, her bir varyantı ayrı bir Firebase projesiyle kaydedebilirsiniz. Ancak, aynı Firebase kaynaklarını paylaşan çeşitleriniz varsa, bunları aynı Firebase projesine kaydedin.

Firebase projeleri, uygulamaları ve siteleri için bazı genel sınırlar şunlardır:

  • Hesap başına proje sayısı

    • Spark fiyatlandırma planı — Proje oluşturma kotası, daha düşük proje sayısıyla sınırlıdır (genellikle 5-10 civarında).
    • Blaze fiyatlandırma planı — Hesap başına proje oluşturma kotası, ilişkili Cloud Billing hesabı iyi durumda olduğu sürece önemli ölçüde artar.

    Proje oluşturma kotası sınırı, çoğu geliştirici için nadiren endişe kaynağıdır, ancak gerekirse proje kotasında artış talep edebilirsiniz.

    Bir projenin tamamen silinmesinin 30 gün gerektirdiğini ve proje tamamen silinene kadar proje kotasına sayılacağını unutmayın.

  • Proje başına uygulama sayısı

    Firebase, bir Firebase projesi içindeki toplam Firebase Uygulaması sayısını 30 ile sınırlar.

    Tek bir Firebase projesi içindeki tüm Firebase Uygulamalarının, son kullanıcı açısından aynı uygulamanın platform varyantları olduğundan emin olmalısınız. Örneğin, beyaz etiketli bir uygulama geliştirirseniz, bağımsız olarak etiketlenen her uygulamanın kendi Firebase projesi olmalıdır.

    SSS'de proje başına uygulama sınırı hakkında daha fazla bilgi edinin.

  • Proje başına Barındırma sitesi sayısı

    Firebase Barındırma çoklu site özelliği , proje başına maksimum 36 siteyi destekler.

Çok kiracılık

Mantıksal olarak bağımsız birkaç farklı uygulamanın ve/veya web sitesinin tek bir Firebase projesine (genellikle "çoklu kiracılık" olarak adlandırılır) bağlanması önerilmez. Çoklu kiracılık, analitik toplama, paylaşılan kimlik doğrulama, aşırı karmaşık veritabanı yapıları ve güvenlik kurallarıyla ilgili zorluklar gibi istenmeyen sorunlar dahil olmak üzere ciddi yapılandırma ve veri gizliliği sorunlarına yol açabilir.

Genel olarak, bir dizi uygulama aynı verileri ve yapılandırmaları paylaşmıyorsa, her uygulamayı farklı bir Firebase projesine kaydetmeyi kesinlikle düşünün.

Örneğin, beyaz etiketli bir uygulama geliştirirseniz, bağımsız olarak etiketlenen her uygulamanın kendi Firebase projesi olmalıdır. Her uygulama (gizlilik nedenleriyle) verileri başkalarıyla paylaşmaz ve paylaşmamalıdır.

Uygulamanızı başlatma