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ırmayacağı bir ortamda veya sürekli entegrasyon (CI) ortamında çalıştırmak istiyorsanız, şunları yapabilirsiniz: Uygulamanızın, gerçek bir doğrulama sağlayıcısı yerine Uygulama Denetimi hata ayıklama sağlayıcısını kullanan bir hata ayıklama yapısı oluşturun.

Simülatörde hata ayıklama sağlayıcısını kullanma

Uygulamanızı bir simülatörde etkileşimli olarak çalıştırırken (örneğin geliştirme sırasında) hata ayıklama sağlayıcısını kullanmak için 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 (v11.0 veya daha yenisi) hata ayıklama günlüğünü etkinleştirin:

    1. Ürün > Şema > Şemayı düzenle öğesini açın.
    2. Soldaki menüden Çalıştır'ı seçin, ardından Bağımsız Değişkenler sekmesini seçin.
    3. Başlatma Sırasında Aktarılan Bağımsız Değişkenler bölümüne -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 jetonlarını yönet'i seçin. Ardından, önceki adımda oturum açtığınız hata ayıklama jetonunu 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 edecektir.

Bu belirteç, geçerli bir cihaz olmadan Firebase kaynaklarınıza erişime izin verdiğinden, onu gizli tutmanız çok önemlidir. Bunu halka açık bir depoya teslim etmeyin ve kayıtlı bir belirtecin güvenliği ihlal edilirse onu Firebase konsolundan derhal iptal edin.

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

Hata ayıklama sağlayıcısını sürekli entegrasyon (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 jetonlarını 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. Bunu halka açık bir depoya teslim etmeyin ve kayıtlı bir belirtecin güvenliği ihlal edilirse onu Firebase konsolundan derhal iptal edin.

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

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

  3. Gerekirse CI sisteminizi, hata ayıklama belirtecinizin CI ortamında bir ortam değişkeni olarak kullanılabilmesini sağlayacak şekilde yapılandırın. Değişkene APP_CHECK_DEBUG_TOKEN_FROM_CI gibi bir ad verin.

  4. Xcode'da, test planınıza FIRAAppCheckDebugToken adında ve değer olarak $(APP_CHECK_DEBUG_TOKEN) gibi bir şeyle bir ortam değişkeni ekleyin.

  5. CI test betiğinizi, hata ayıklama belirtecini bir 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)
  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 jetonu geçerli olarak kabul eder.