Мое приложение Android постоянно получает ошибки PERMISSION_DENIED от Firestore, хотя мой пользователь правильно аутентифицирован и проверка приложений настроена для отладочных сборок.
Я подтвердил следующее:
Проблема характерна для отладочных сборок на физическом устройстве.
Поставщик отладки проверки приложений реализован правильно: Мое приложение использует собственный класс Application, чтобы гарантировать, что проверка приложения инициализируется перед любым другим кодом. Журналы подтверждают, что все работает правильно.
Выполнен полный сброс токена отладки: я выполнил процедуру полного сброса (удаление всех токенов, удаление приложения, создание и регистрация нового токена). Ошибка PERMISSION_DENIED по-прежнему возникает.
Правила безопасности Firestore не являются причиной: ошибка сохраняется, даже если мои правила Firestore настроены на полную открытость для тестирования (allow read, write: if true;). Это доказывает, что отклонение происходит до того, как мои правила будут оценены.
КРИТИЧЕСКОЕ ОБНАРУЖЕНИЕ — ОШИБКА пользовательского интерфейса: консоль проверки приложений для Cloud Firestore API находится в режиме «Мониторинг». Однако в пользовательском интерфейсе нет кнопки для отключения мониторинга. Единственное доступное действие — «Принудить» («Активировать»). Это не позволяет мне выполнить важнейший тест изоляции и временно отключить проверку приложений для этой службы, чтобы подтвердить, что она является источником проблемы.
Я исчерпал все возможные решения по настройке на стороне клиента и консоли. Имеющиеся данные неопровержимо свидетельствуют о том, что серверная часть моего проекта по неизвестной причине не учитывает правильно зарегистрированный токен отладки и что ошибка пользовательского интерфейса в консоли Firebase препятствует дальнейшей диагностике.
Не могли бы вы провести расследование со своей стороны?
Мое приложение Android постоянно получает ошибки PERMISSION_DENIED от Firestore, хотя мой пользователь правильно аутентифицирован и проверка приложений настроена для отладочных сборок. Я подтвердил следующее: [list] [*]Проблема характерна для отладочных сборок на физическом устройстве.
[*]Поставщик отладки проверки приложений реализован правильно: Мое приложение использует собственный класс Application, чтобы гарантировать, что проверка приложения инициализируется перед любым другим кодом. Журналы подтверждают, что все работает правильно.
[*]Выполнен полный сброс токена отладки: я выполнил процедуру полного сброса (удаление всех токенов, удаление приложения, создание и регистрация нового токена). Ошибка PERMISSION_DENIED по-прежнему возникает.
[*]Правила безопасности Firestore не являются причиной: ошибка сохраняется, даже если мои правила Firestore настроены на полную открытость для тестирования (allow read, write: if true;). Это доказывает, что отклонение происходит до того, как мои правила будут оценены.
[*]КРИТИЧЕСКОЕ ОБНАРУЖЕНИЕ — ОШИБКА пользовательского интерфейса: консоль проверки приложений для Cloud Firestore API находится в режиме «Мониторинг». Однако в пользовательском интерфейсе нет кнопки для отключения мониторинга. Единственное доступное действие — «Принудить» («Активировать»). Это не позволяет мне выполнить важнейший тест изоляции и временно отключить проверку приложений для этой службы, чтобы подтвердить, что она является источником проблемы.
[/list] Я исчерпал все возможные решения по настройке на стороне клиента и консоли. Имеющиеся данные неопровержимо свидетельствуют о том, что серверная часть моего проекта по неизвестной причине не учитывает правильно зарегистрированный токен отладки и что ошибка пользовательского интерфейса в консоли Firebase препятствует дальнейшей диагностике. Не могли бы вы провести расследование со своей стороны?