作者:铁骑侠客_685 | 来源:互联网 | 2023-02-07 19:34
当设备通过移动数据连接连接时,我遇到Firebase身份验证问题.如果通过WiFi认证连接工作正常.
我使用以下代码进行身份验证:
public class MyAuthActivity extends Activity
{
protected FirebaseAuth auth;
protected FirebaseAuth.AuthStateListener authListener;
protected FirebaseUser user;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
auth = FirebaseAuth.getInstance();
authListener = new FirebaseAuth.AuthStateListener()
{
@Override
public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth)
{
user = firebaseAuth.getCurrentUser();
if (user != null)
{
// User is signed in
Log.d("APP", "onAuthStateChanged:signed_in: " + user.getUid());
}
else
{
// User is signed out
Log.d("APP", "onAuthStateChanged:signed_out");
}
}
};
auth.addAuthStateListener(authListener);
auth.signInAnonymously()
.addOnFailureListener(this, new OnFailureListener()
{
@Override
public void onFailure(@NonNull Exception e)
{
Log.w("APP", "signInAnonymously failure: ", e);
}
})
.addOnCompleteListener(this, new OnCompleteListener()
{
@Override
public void onComplete(@NonNull Task task)
{
Log.d("APP", "signInAnonymously:onComplete:" + task.isSuccessful());
if (!task.isSuccessful())
{
Log.w("APP", "signInAnonymously", task.getException());
}
}
});
}
}
通过移动数据连接时收到错误:
signIn匿名失败:com.google.firebase.FirebaseNetworkException:发生网络错误(例如超时,中断连接或无法访问的主机).com.google.android.gms.internal.zzblv.zzce(未知来源)com.google.android.gms.internal.zzbls $ zzj.zza(未知来源)com.google.android.gms.internal.zzbmd .zzcf(未知来源)com.google.android.gms.internal.zzbmd $ zza.onFailure(未知来源)位于android.os上的com.google.android.gms.internal.zzbly $ zza.onTransact(未知来源) .binder.execTransact(Binder.java:404)at dalvik.system.NativeStart.run(Native Method)
我有什么办法可以解决上述问题,或者获得有关真正导致问题的更多信息.
移动电话通过移动数据运行良好,并成功访问互联网和谷歌Play商店.
Firebase版本10.2.0,Android API 19
一些额外的信息.上述身份验证的主要目的是Firebase数据库的访问身份验证.
如果我允许对数据库进行非认证访问,我可以通过任何类型的连接(移动数据和WiFi)连接和检索数据.身份验证是意外失败的唯一部分.