Moja aplikacja Firebase/Ionic 2 działa idealnie w przeglądarce (serwoncie jonowe) i na lokalnym urządzeniu z Androidem (jonowym uruchomieniu systemu Android). Aplikacja korzysta z bazy danych Firebase i funkcji auth.Błąd sieci Firebase Auth w aplikacji Ionic 2
Aplikacja działa również doskonale na urządzeniu z systemem iOS.
Jednak po opublikowaniu w Google Play do testów beta na Androida metoda logowania uwierzytelniającego zawsze kończy się niepowodzeniem z błędem: "Wystąpił błąd sieci (taki jak przekroczenie limitu czasu, przerwane połączenie lub nieosiągalny host)." Ale metody bazy danych Firebase działają dobrze. Korzystam tylko z dostawcy poczty e-mail/hasła Firebase.
Czytałem każdy wpis, który mogę znaleźć, który jest podobny do tego problemu i wypróbowałem wszystkie te rozwiązania. Zaktualizowałem do najnowszych wersji wszystkich komponentów.
Wtyczka cordova-plugin-whitelist jest zainstalowana. Jest instalowany domyślnie w nowym projekcie Ionic 2. Rozumiem, że poniższe ustawienia zabezpieczeń nie blokują Firebase.
index.html
<meta http-equiv="Content-Security-Policy" content="font-src * data:; img-src * data:; default-src * 'unsafe-eval' 'unsafe-inline'; script-src * 'unsafe-eval' 'unsafe-inline'">
config.xml
<access origin="*"/>
<allow-intent href="http://*/*"/>
<allow-intent href="https://*/*"/>
<allow-navigation href="*"/>
Moje usługi
public login(email: string, password: string): Observable<any> {
return Observable.fromPromise(
<Promise<any>>firebase.auth().signInWithEmailAndPassword(email, password)
);
}
moja forma
this.authService.login(this.loginForm.value.email, this.loginForm.value.password)
.subscribe(() => {
// Do something!
}, error => {
// A network error has occurred!
});
Version Info
Cordova CLI: 6.5.0
Ionic Framework Version: 2.2.0
Ionic CLI Version: 2.2.1
Ionic App Lib Version: 2.2.0
Ionic App Scripts Version: 1.1.4
Node Version: v7.2.1
In package.json: "firebase": "^3.7.1"
In config.xml: <plugin name="cordova-plugin-whitelist" spec="1.3.1"/>
Twój problem może być gdzie indziej (nie związany z kodem), możesz sprawdzić podsekcję "Metoda logowania" w sekcji "Auth" – user1928596