Uygulamanızı App Check'e kaydettikten sonra uygulamanızı App Check'in normalde geçerli olarak sınıflandırmayacağı bir ortamda (ör. geliştirme sırasında bir simülatör veya cihaz) veya sürekli entegrasyon (CI) ortamında çalıştırmak istiyorsanız gerçek bir doğrulama sağlayıcı yerine App Check hata ayıklama sağlayıcısını kullanan uygulamanızın hata ayıklama derlemesini oluşturabilirsiniz.
Geliştirme aşamasında hata ayıklama sağlayıcıyı kullanma
Uygulamanızı etkileşimli olarak çalıştırırken (ör. geliştirme sırasında) hata ayıklama sağlayıcıyı kullanmak için aşağıdakileri yapın:
Hata ayıklama derlemenizde, herhangi bir Firebase arka uç hizmetini kullanmadan önce App Check hata ayıklama sağlayıcı fabrikasını oluşturup ayarlayın:
Swift
let providerFactory = AppCheckDebugProviderFactory() AppCheck.setAppCheckProviderFactory(providerFactory) FirebaseApp.configure()
Objective-C
FIRAppCheckDebugProviderFactory *providerFactory = [[FIRAppCheckDebugProviderFactory alloc] init]; [FIRAppCheck setAppCheckProviderFactory:providerFactory]; // Use Firebase library to configure APIs [FIRApp configure];
Xcode projenizde (11.0 veya daha yeni sürümler) hata ayıklama günlük kaydını etkinleştirin:
- Ürün > Şema > Şemayı düzenle'yi açın.
- Sol menüden Çalıştır'ı, ardından Parametreler sekmesini seçin.
- Başlatma sırasında iletilen bağımsız değişkenler bölümüne
-FIRDebugEnabled
ekleyin.
Uygulamayı başlatın. SDK arka uçta istek göndermeye çalıştığında yerel bir hata ayıklama jetonu günlüğe kaydedilir. Örneğin:
[Firebase/AppCheck][I-FAA001001] Firebase App Check Debug Token: 123a4567-b89c-12d3-e456-789012345678
Firebase konsolunun App Check bölümünde, uygulamanızın taşma menüsünden Hata ayıklama jetonlarını yönet'i seçin. Ardından, önceki adımda kaydettiğiniz hata ayıklama jetonunu kaydedin.
Jetonu kaydettikten sonra Firebase arka uç hizmetleri jetonu geçerli olarak kabul eder.
Bu jeton, geçerli bir cihaz olmadan Firebase kaynaklarınıza erişime izin verdiği için gizli tutmanız çok önemlidir. Jetonu herkese açık bir depoya göndermeyin ve kayıtlı bir jetonun güvenliği ihlal edilirse Firebase konsolunda hemen iptal edin.
Hata ayıklama sağlayıcıyı CI ortamında kullanma
Hata ayıklama sağlayıcıyı sürekli entegrasyon (CI) ortamında kullanmak için aşağıdakileri yapın:
Firebase konsolunun App Check bölümünde, uygulamanızın taşma menüsünden Hata ayıklama jetonlarını yönet'i seçin. Ardından yeni bir hata ayıklama jetonu oluşturun. Sonraki adımda jetona ihtiyacınız olacak.
Bu jeton, geçerli bir cihaz olmadan Firebase kaynaklarınıza erişime izin verdiğinden, jetonu gizli tutmanız çok önemlidir. Jetonu herkese açık bir depoya göndermeyin ve kayıtlı bir jetonun güvenliği ihlal edilirse Firebase konsolunda hemen iptal edin.
Yeni oluşturduğunuz hata ayıklama jetonunu CI sisteminizin güvenli anahtar deposuna ekleyin (ör. GitHub Actions'ın şifrelenmiş gizli bilgileri veya Travis CI'nın şifrelenmiş değişkenleri).
Gerekirse hata ayıklama jetonunuzu CI ortamında ortam değişkeni olarak kullanacak şekilde CI sisteminizi yapılandırın. Değişkeni
APP_CHECK_DEBUG_TOKEN_FROM_CI
gibi bir adla adlandırın.Xcode'da, test şemanıza
FIRAAppCheckDebugToken
adlı ve değeri$(APP_CHECK_DEBUG_TOKEN)
gibi bir şey olan bir ortam değişkeni ekleyin.CI test komut dosyanızı, hata ayıklama jetonunu ortam değişkeni olarak iletecek şekilde yapılandırın. Örneğin:
xcodebuild test -scheme YourTestScheme -workspace YourProject.xcworkspace \ APP_CHECK_DEBUG_TOKEN=$(APP_CHECK_DEBUG_TOKEN_FROM_CI)
Hata ayıklama derlemenizde, herhangi bir Firebase arka uç hizmetini kullanmadan önce App Check hata ayıklama sağlayıcı fabrikasını oluşturup ayarlayın:
Swift
let providerFactory = AppCheckDebugProviderFactory() AppCheck.setAppCheckProviderFactory(providerFactory) FirebaseApp.configure()
Objective-C
FIRAppCheckDebugProviderFactory *providerFactory = [[FIRAppCheckDebugProviderFactory alloc] init]; [FIRAppCheck setAppCheckProviderFactory:providerFactory]; // Use Firebase library to configure APIs [FIRApp configure];
Uygulamanız bir CI ortamında çalışırken Firebase arka uç hizmetleri, gönderdiği jetonu geçerli olarak kabul eder.