Apple platformlarında hata ayıklama sağlayıcısıyla Uygulama Kontrolü'nü kullanın

Uygulamanızı Uygulama Kontrolü için kaydettirdikten sonra, uygulamanızı, geliştirme sırasındaki bir simülatör gibi Uygulama Kontrolü'nün normalde geçerli olarak sınıflandırmadığı bir ortamda veya bir sürekli entegrasyon (CI) ortamında çalıştırmak istiyorsanız, şunları yapabilirsiniz: gerçek bir doğrulama sağlayıcısı yerine Uygulama Kontrolü hata ayıklama sağlayıcısını kullanan uygulamanızın hata ayıklama yapısını oluşturun.

Bir simülatörde hata ayıklama sağlayıcısını kullanın

Uygulamanızı bir simülatörde etkileşimli olarak çalıştırırken hata ayıklama sağlayıcısını kullanmak için (örneğin geliştirme sırasında), aşağıdakileri yapın:

  1. Hata ayıklama derlemenizde, herhangi bir Firebase arka uç hizmetini kullanmadan önce, Uygulama Kontrolü hata ayıklama sağlayıcı fabrikasını oluşturun ve ayarlayın:

    Süratli

    let providerFactory = AppCheckDebugProviderFactory()
    AppCheck.setAppCheckProviderFactory(providerFactory)
    
    FirebaseApp.configure()

    Amaç-C

    FIRAppCheckDebugProviderFactory *providerFactory =
          [[FIRAppCheckDebugProviderFactory alloc] init];
    [FIRAppCheck setAppCheckProviderFactory:providerFactory];
    
    // Use Firebase library to configure APIs
    [FIRApp configure];
  2. Xcode projenizde hata ayıklama günlüğünü etkinleştirin (v11.0 veya daha yenisi):

    1. Ürün > Şema > Şemayı düzenle'yi açın.
    2. Soldaki menüden Çalıştır'ı seçin, ardından Bağımsız Değişkenler sekmesini seçin.
    3. Başlatmada Geçilen Bağımsız Değişkenler bölümünde, -FIRDebugEnabled ekleyin.
  3. Uygulamayı başlatın. SDK arka uca bir istek göndermeye çalıştığında yerel bir hata ayıklama belirteci günlüğe kaydedilir. Örneğin:

    [Firebase/AppCheck][I-FAA001001] Firebase App Check Debug Token:
    123a4567-b89c-12d3-e456-789012345678
  4. Firebase konsolunun Uygulama Kontrolü bölümünde, uygulamanızın taşma menüsünden Hata ayıklama belirteçlerini yönet'i seçin. Ardından, önceki adımda oturum açmış olduğunuz hata ayıklama belirtecini kaydedin.

    Hata Ayıklama Belirteçlerini Yönet menü öğesinin ekran görüntüsü

Belirteci kaydettikten sonra, Firebase arka uç hizmetleri onu geçerli olarak kabul eder.

Bu belirteç, geçerli bir cihaz olmadan Firebase kaynaklarınıza erişime izin verdiğinden, onu gizli tutmanız çok önemlidir. Herkese açık bir havuza taahhüt etmeyin ve kayıtlı bir jetonun güvenliği ihlal edilirse, derhal Firebase konsolunda iptal edin.

Hata ayıklama sağlayıcısını bir CI ortamında kullanın

Hata ayıklama sağlayıcısını sürekli tümleştirme (CI) ortamında kullanmak için aşağıdakileri yapın:

  1. Firebase konsolunun Uygulama Kontrolü bölümünde, uygulamanızın taşma menüsünden Hata ayıklama belirteçlerini yönet'i seçin. Ardından, yeni bir hata ayıklama belirteci oluşturun. Bir sonraki adımda jetona ihtiyacınız olacak.

    Bu belirteç, geçerli bir cihaz olmadan Firebase kaynaklarınıza erişime izin verdiğinden, onu gizli tutmanız çok önemlidir. Herkese açık bir havuza taahhüt etmeyin ve kayıtlı bir jetonun güvenliği ihlal edilirse, derhal Firebase konsolunda iptal edin.

    Hata Ayıklama Belirteçlerini Yönet menü öğesinin ekran görüntüsü

  2. Az önce oluşturduğunuz hata ayıklama belirtecini CI sisteminizin güvenli anahtar deposuna ekleyin (örneğin, GitHub Actions'ın şifreli sırları veya Travis CI'nin şifreli değişkenleri ).

  3. Gerekirse, hata ayıklama belirtecinizi CI ortamında bir ortam değişkeni olarak kullanılabilir hale getirmek için CI sisteminizi yapılandırın. Değişkene APP_CHECK_DEBUG_TOKEN_FROM_CI gibi bir ad verin.

  4. Xcode'da, test düzeninize FIRAAppCheckDebugToken ve değer olarak $(APP_CHECK_DEBUG_TOKEN) gibi bir ortam değişkeni ekleyin.

  5. Hata ayıklama belirtecini ortam değişkeni olarak iletmek için CI test komut dosyanızı yapılandırın. Örneğin:

    xcodebuild test -scheme YourTestScheme -workspace YourProject.xcworkspace \
    APP_CHECK_DEBUG_TOKEN=$(APP_CHECK_DEBUG_TOKEN_FROM_CI)
  6. Hata ayıklama derlemenizde, herhangi bir Firebase arka uç hizmetini kullanmadan önce, Uygulama Kontrolü hata ayıklama sağlayıcı fabrikasını oluşturun ve ayarlayın:

    Süratli

    let providerFactory = AppCheckDebugProviderFactory()
    AppCheck.setAppCheckProviderFactory(providerFactory)
    
    FirebaseApp.configure()

    Amaç-C

    FIRAppCheckDebugProviderFactory *providerFactory =
          [[FIRAppCheckDebugProviderFactory alloc] init];
    [FIRAppCheck setAppCheckProviderFactory:providerFactory];
    
    // Use Firebase library to configure APIs
    [FIRApp configure];

Uygulamanız bir CI ortamında çalıştığında, Firebase arka uç hizmetleri, gönderdiği belirteci geçerli olarak kabul eder.