Я создал приложение, которое использует flutter, Firebase Firestore и Firebase Authentication.
Я опубликовал свое приложение как в Android Play Store (внутренние тесты), так и в Apple App Store (Testflight), используя один и тот же >flutter базовый код.
Проблема:
Почему проверка приложений не распознает некоторые запросы Android (непроверенные: недействительные запросы) каждые несколько часов, в то время как все остальные распознаются как проверенные... в то время как проверка приложений распознает (подтвержденные запросы) 100 % запросов iPhone? и он даже распознает те же приложения для Android, когда я просто перезапускаю приложение с устройства
Объяснение:
[*]Вот снимок, показывающий только запросы приложений Android (с 1 устройства): вначале вы можете увидеть «непроверенные» (см. красную стрелку на графике), затем все они становятся «проверенными». " на несколько часов, затем снова 1 "непроверенный" (здесь не показано) и так далее.

2. А вот снимок, показывающий только запросы приложения iPhone (с 1 устройства): вы можете видеть, что все «проверено», как и ожидалось, даже через несколько часов или дней.

Кодекс:
Будущее main() async{ ВиджетыFlutterBinding.ensureInitialized(); ждут Firebase.initializeApp(параметры: DefaultFirebaseOptions.currentPlatform,); ждут FirebaseAppCheck.instance.activate( androidProvider: AndroidProvider.playIntegrity, appleProvider: AppleProvider.appAttestWithDeviceCheckFallback); runApp (AuthUserProviderWidget()); } В качестве ключа подписи я использую ключ из консоли Google Play > Выпуск > Настройка > Подписание приложения > Сертификат ключа подписи приложения > SHA-256
и я копирую этот SHA-256 в Firebase > Проверка приложений > Приложения > Android > Play Integrity > Отпечаток сертификата SHA-256
Обновление 1:
Я попробовал «принудительно» проверить приложение: тот же результат... Я попробовал другое телефонное устройство Android: то же самое (в основном «проверенное», пока через несколько часов я не получил «непроверенное»)... У меня есть попробовал использовать SHA256 «ключа загрузки»: он вообще не работает с appcheck... Я запутался, есть идеи???
Обновление 2:
Я использовал kReleaseMode, чтобы подтвердить, что это режим выпуска... но с Android все та же проблема: все запросы проверяются, затем случайно один запрос не проверяется и блокируется... затем снова последующие вызовы проверены еще раз... Я также обновил до последних версий flutter (3.13.4) и Appcheck 0.2.0 и все Firebase... Все то же самое...
Поскольку перезапуск приложения после ошибки всегда проходит гладко, я также пытался добавить искусственные задержки после инициализации Firebase и после активации AppCheck... Я также пытался активировать несколько раз... Я пробовал await FirebaseAppCheck.instance.setTokenAutoRefreshEnabled(true); ... Все та же случайная ошибка, раз в несколько часов
Мобильная версия