Я пытаюсь пройти аутентификацию с помощью firebase. Моя первоначальная ошибка в android была [ Cleartext HTTP traffic to 10.0.2.2 not permitted ]
. Прочитал как и включил Cleartext. Итак, теперь я получаю ответы от firebase. Но это всегда «сетевая ошибка», указывающая, что причиной может быть тайм-аут или недоступность хоста.
Я читал все, что мог, и не уверен, что делать дальше или что я просмотрел. Вот шаги, которые я сделал
- Включен трафик очистки текста в manifest.xml
- Создал network_security_config и указал его в моем manfiest.xml
- Обновлены правила проверки подлинности firebase и зависимостей сервисов google в gradle
- Пробовал на реальном устройстве (все еще не удалось)
- Обновлены сервисы Google Play на эмуляторе Android
- У проверенного эмулятора Android есть доступ в Интернет
- Подтверждено, что у моего проекта Firebase есть мои AppID и SHA-1
- Проверенная электронная почта включена
Вот мой призыв к firebase:
auth().createUserWithEmailAndPassword(data.email, data.password).addOnCompleteListener(
(task) -> {
hideProgressBar();
if (task.isSuccessful()) {
//do stuff on success...
} else {
String localizedMessage = task.getException().getLocalizedMessage();
errorText.setText(localizedMessage);
}
}
Мой Manifest.xml:
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:usesCleartextTraffic="true"
android:networkSecurityConfig="@xml/network_security_config"
android:supportsRtl="true"
android:theme="@style/AppTheme"
android:name=".MyApp">
Моя конфигурация безопасности res / xml:
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<domain-config cleartextTrafficPermitted="true">
<domain includeSubdomains="true">10.0.2.2</domain>
</domain-config>
</network-security-config>
Firebase Emulator
закомментируйте код, связанный с эмулятором, и вы сможете войти в систему.