Używanie Sprawdzania aplikacji z dostawcą debugowania na platformach Apple

Jeśli po zarejestrowaniu aplikacji w Sprawdzaniu aplikacji chcesz ją uruchomić w środowisku, którego Sprawdzanie aplikacji zwykle nie sklasyfikowałoby jako prawidłowe, takich jak symulatory lub urządzenia działające w trakcie budowy możesz utworzyć kompilację do debugowania aplikacji, która używa dostawcy debugowania Sprawdzania aplikacji zamiast prawdziwego dostawcy atestu.

Używanie dostawcy debugowania w trakcie opracowywania

Korzystanie z dostawcy debugowania podczas interaktywnego uruchamiania aplikacji (np. podczas programowania):

  1. Przed użyciem w kompilacji do debugowania przed użyciem usług backendu Firebase utwórz ustaw fabrykę dostawcy debugowania Sprawdzania aplikacji:

    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];
  2. Włącz logowanie debugowania w projekcie Xcode (wersja 11.0 lub nowsza):

    1. Otwórz Produkt > Schemat > Edytuj schemat.
    2. W menu po lewej stronie kliknij Uruchom i wybierz kartę Argumenty.
    3. W sekcji Arguments Passed at Launch (Argumenty przekazane przy uruchomieniu) dodaj parametr -FIRDebugEnabled.
  3. Uruchom aplikację. Gdy pakiet SDK spróbuje wykonać te czynności, zostanie zarejestrowany lokalny token debugowania wysłać żądanie do backendu. Przykład:

    [Firebase/AppCheck][I-FAA001001] Firebase App Check Debug Token:
    123a4567-b89c-12d3-e456-789012345678
  4. W sekcji Sprawdzanie aplikacji konsoli Firebase wybierz Zarządzaj tokenami debugowania rozszerzone menu. Następnie zarejestruj token debugowania zapisany w poprzednim krok po kroku.

    Zrzut ekranu przedstawiający pozycję menu Zarządzaj tokenami debugowania

Gdy zarejestrujesz token, usługi backendu Firebase uznają go za prawidłowy.

Ponieważ token ten zapewnia dostęp do zasobów Firebase bez urządzenia, należy zadbać o ich prywatność. Nie zlecaj repozytorium publiczne, a jeśli zarejestrowany token zostanie kiedykolwiek naruszony, unieważnij go. od razu w konsoli Firebase.

Używanie dostawcy debugowania w środowisku CI

Aby użyć dostawcy debugowania w środowisku ciągłej integracji (CI), wykonaj :

  1. W sekcji Sprawdzanie aplikacji konsoli Firebase wybierz Zarządzaj tokenami debugowania rozszerzone menu. Następnie utwórz nowy token debugowania. Potrzebny będzie token kolejny krok.

    Ponieważ token ten zapewnia dostęp do zasobów Firebase bez prawidłowe urządzenie, należy zadbać o ich prywatność. Nie zlecaj repozytorium publiczne, a jeśli zarejestrowany token zostanie kiedykolwiek naruszony, unieważnij go. od razu w konsoli Firebase.

    Zrzut ekranu przedstawiający pozycję menu Zarządzaj tokenami debugowania

  2. Dodaj utworzony przed chwilą token debugowania do bezpiecznego magazynu kluczy systemu CI (na przykład zaszyfrowane obiekty tajne w działaniach GitHub lub zaszyfrowane zmienne Travis CI).

  3. W razie potrzeby skonfiguruj system CI, aby udostępnić token debugowania w środowisku CI jako zmienna środowiskowa. Nazwij zmienną np. APP_CHECK_DEBUG_TOKEN_FROM_CI.

  4. W Xcode dodaj do schematu testowania zmienną środowiskową z nazwą FIRAAppCheckDebugToken i w podobny sposób $(APP_CHECK_DEBUG_TOKEN) jako wartość.

  5. Skonfiguruj skrypt testowy CI tak, aby przekazywał token debugowania jako środowisko . Przykład:

    xcodebuild test -scheme YourTestScheme -workspace YourProject.xcworkspace \
    APP_CHECK_DEBUG_TOKEN=$(APP_CHECK_DEBUG_TOKEN_FROM_CI)
  6. Przed użyciem w kompilacji do debugowania przed użyciem usług backendu Firebase utwórz ustaw fabrykę dostawcy debugowania Sprawdzania aplikacji:

    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];

Gdy Twoja aplikacja działa w środowisku CI, usługi backendu Firebase będą akceptować wysyłanego przez niego tokena jako prawidłowego.