颤振错误:(getGoogleAppFormMethod()返回Gms:com.google.firebase.auth.api.internal。zzaq@3e2567)
您好当我在卷轴设备中使用Firebase制作Auth phone时,我无法执行此操作此操作始终返回此错误颤振错误:(getGoogleAppFormMethod()返回Gms:com.google.firebase.auth.api.internal。zzaq@3e2567),firebase,flutter,Firebase,Flutter,您好当我在卷轴设备中使用Firebase制作Auth phone时,我无法执行此操作此操作始终返回此错误 String phonenumber; String smsCode; String vialdid; Future<void> verfityphoen()async{ final PhoneCodeAutoRetrievalTimeout AutoRetriv =(String verid) { this.vialdid =verid; }; fi
String phonenumber;
String smsCode;
String vialdid;
Future<void> verfityphoen()async{
final PhoneCodeAutoRetrievalTimeout AutoRetriv =(String verid) {
this.vialdid =verid;
};
final PhoneCodeSent smsCodeset =(String verid,[int forceResendingToken]){
this.vialdid=verid;
smscodeDialog();
};
final PhoneVerificationCompleted verfiedcompletd=(AuthCredential user){
print('verfild');
};
final PhoneVerificationFailed verfilederror =(AuthException exception){
print('${exception.message}');
};
await FirebaseAuth.instance.verifyPhoneNumber(
phoneNumber:"+967733659520",
timeout: const Duration(seconds: 5),
verificationCompleted: verfiedcompletd,
verificationFailed: verfilederror,
codeSent: smsCodeset,
codeAutoRetrievalTimeout: AutoRetriv
);
}
Future<bool> smscodeDialog(){
return showDialog(
context:context,barrierDismissible: false,
builder:(context){
return AlertDialog(
title: Text('enter codesms'),
content: TextField(
onChanged: (val){
this.smsCode=val;
},
),
actions: <Widget>[
new FlatButton(
onPressed: (){
FirebaseAuth.instance.currentUser().then((user){
if (user!=null){
Navigator.pop(context);
Navigator.push(context, MaterialPageRoute(builder:(context)=>Home()));
}else{
Navigator.pop(context);
_testSignInWithPhoneNumber();
}
});
},
child:Text('Clike '))
],
);
});
}
_testSignInWithPhoneNumber() async {
String _smsCodeController;
final AuthCredential credential = PhoneAuthProvider.getCredential(
verificationId: vialdid,
smsCode: smsCode,
);
final FirebaseUser user = (await _auth.signInWithCredential(credential)) as FirebaseUser;
final FirebaseUser currentUser = await _auth.currentUser();
assert(user.uid == currentUser.uid);
_smsCodeController = '';
return 'signInWithPhoneNumber succeeded: $user';
}
(getGoogleAppFormMethod()返回的Gms:
com.google.firebase.auth.api.internal。zzaq@3e2567)
和
String phonenumber;
String smsCode;
String vialdid;
Future<void> verfityphoen()async{
final PhoneCodeAutoRetrievalTimeout AutoRetriv =(String verid) {
this.vialdid =verid;
};
final PhoneCodeSent smsCodeset =(String verid,[int forceResendingToken]){
this.vialdid=verid;
smscodeDialog();
};
final PhoneVerificationCompleted verfiedcompletd=(AuthCredential user){
print('verfild');
};
final PhoneVerificationFailed verfilederror =(AuthException exception){
print('${exception.message}');
};
await FirebaseAuth.instance.verifyPhoneNumber(
phoneNumber:"+967733659520",
timeout: const Duration(seconds: 5),
verificationCompleted: verfiedcompletd,
verificationFailed: verfilederror,
codeSent: smsCodeset,
codeAutoRetrievalTimeout: AutoRetriv
);
}
Future<bool> smscodeDialog(){
return showDialog(
context:context,barrierDismissible: false,
builder:(context){
return AlertDialog(
title: Text('enter codesms'),
content: TextField(
onChanged: (val){
this.smsCode=val;
},
),
actions: <Widget>[
new FlatButton(
onPressed: (){
FirebaseAuth.instance.currentUser().then((user){
if (user!=null){
Navigator.pop(context);
Navigator.push(context, MaterialPageRoute(builder:(context)=>Home()));
}else{
Navigator.pop(context);
_testSignInWithPhoneNumber();
}
});
},
child:Text('Clike '))
],
);
});
}
_testSignInWithPhoneNumber() async {
String _smsCodeController;
final AuthCredential credential = PhoneAuthProvider.getCredential(
verificationId: vialdid,
smsCode: smsCode,
);
final FirebaseUser user = (await _auth.signInWithCredential(credential)) as FirebaseUser;
final FirebaseUser currentUser = await _auth.currentUser();
assert(user.uid == currentUser.uid);
_smsCodeController = '';
return 'signInWithPhoneNumber succeeded: $user';
}
此应用未被授权使用Firebase身份验证。请
验证是否在中配置了正确的包名和SHA-1
Firebase控制台。[应用程序验证失败]
但这个错误只是在验证电话时显示,但在使用电子邮件/密码时,我工作正常。。如何解决此问题并使用phone进行身份验证
String phonenumber;
String smsCode;
String vialdid;
Future<void> verfityphoen()async{
final PhoneCodeAutoRetrievalTimeout AutoRetriv =(String verid) {
this.vialdid =verid;
};
final PhoneCodeSent smsCodeset =(String verid,[int forceResendingToken]){
this.vialdid=verid;
smscodeDialog();
};
final PhoneVerificationCompleted verfiedcompletd=(AuthCredential user){
print('verfild');
};
final PhoneVerificationFailed verfilederror =(AuthException exception){
print('${exception.message}');
};
await FirebaseAuth.instance.verifyPhoneNumber(
phoneNumber:"+967733659520",
timeout: const Duration(seconds: 5),
verificationCompleted: verfiedcompletd,
verificationFailed: verfilederror,
codeSent: smsCodeset,
codeAutoRetrievalTimeout: AutoRetriv
);
}
Future<bool> smscodeDialog(){
return showDialog(
context:context,barrierDismissible: false,
builder:(context){
return AlertDialog(
title: Text('enter codesms'),
content: TextField(
onChanged: (val){
this.smsCode=val;
},
),
actions: <Widget>[
new FlatButton(
onPressed: (){
FirebaseAuth.instance.currentUser().then((user){
if (user!=null){
Navigator.pop(context);
Navigator.push(context, MaterialPageRoute(builder:(context)=>Home()));
}else{
Navigator.pop(context);
_testSignInWithPhoneNumber();
}
});
},
child:Text('Clike '))
],
);
});
}
_testSignInWithPhoneNumber() async {
String _smsCodeController;
final AuthCredential credential = PhoneAuthProvider.getCredential(
verificationId: vialdid,
smsCode: smsCode,
);
final FirebaseUser user = (await _auth.signInWithCredential(credential)) as FirebaseUser;
final FirebaseUser currentUser = await _auth.currentUser();
assert(user.uid == currentUser.uid);
_smsCodeController = '';
return 'signInWithPhoneNumber succeeded: $user';
}
这是我的职责
String phonenumber;
String smsCode;
String vialdid;
Future<void> verfityphoen()async{
final PhoneCodeAutoRetrievalTimeout AutoRetriv =(String verid) {
this.vialdid =verid;
};
final PhoneCodeSent smsCodeset =(String verid,[int forceResendingToken]){
this.vialdid=verid;
smscodeDialog();
};
final PhoneVerificationCompleted verfiedcompletd=(AuthCredential user){
print('verfild');
};
final PhoneVerificationFailed verfilederror =(AuthException exception){
print('${exception.message}');
};
await FirebaseAuth.instance.verifyPhoneNumber(
phoneNumber:"+967733659520",
timeout: const Duration(seconds: 5),
verificationCompleted: verfiedcompletd,
verificationFailed: verfilederror,
codeSent: smsCodeset,
codeAutoRetrievalTimeout: AutoRetriv
);
}
Future<bool> smscodeDialog(){
return showDialog(
context:context,barrierDismissible: false,
builder:(context){
return AlertDialog(
title: Text('enter codesms'),
content: TextField(
onChanged: (val){
this.smsCode=val;
},
),
actions: <Widget>[
new FlatButton(
onPressed: (){
FirebaseAuth.instance.currentUser().then((user){
if (user!=null){
Navigator.pop(context);
Navigator.push(context, MaterialPageRoute(builder:(context)=>Home()));
}else{
Navigator.pop(context);
_testSignInWithPhoneNumber();
}
});
},
child:Text('Clike '))
],
);
});
}
_testSignInWithPhoneNumber() async {
String _smsCodeController;
final AuthCredential credential = PhoneAuthProvider.getCredential(
verificationId: vialdid,
smsCode: smsCode,
);
final FirebaseUser user = (await _auth.signInWithCredential(credential)) as FirebaseUser;
final FirebaseUser currentUser = await _auth.currentUser();
assert(user.uid == currentUser.uid);
_smsCodeController = '';
return 'signInWithPhoneNumber succeeded: $user';
}
gradle
dependencies {
classpath 'com.android.tools.build:gradle:3.5.0'
classpath 'com.google.gms:google-services:4.3.3'
}
(我是法国人,我的回答可能有一些错误。)
几周前我也有同样的问题。我忘了把SHA1钥匙放在火源里。看看你的错误信息,我猜也是同样的问题!您确定在Firebase中保存了正确的SHA-1密钥吗?
为此,我必须安装最新的java jdk,在Android Studio中使用终端,我进入文件夹jdk->bin并执行函数:keytool-list-v-alias androiddebugkey-keystore{C:\\…Android文件夹路径}\.Android\debug.keystore
。你可以在YouTube上找到很多关于这个的视频
在终点站,我收到了一把SHA-1钥匙!我只需进入Firebase->项目设置,然后在页面底部添加了我的密钥
我希望它能帮助你 (我是法国人,我的回答可能有一些错误……)
几周前我也有同样的问题。我忘了把SHA1钥匙放在火源里。看看你的错误信息,我猜也是同样的问题!您确定在Firebase中保存了正确的SHA-1密钥吗?
为此,我必须安装最新的java jdk,在Android Studio中使用终端,我进入文件夹jdk->bin并执行函数:keytool-list-v-alias androiddebugkey-keystore{C:\\…Android文件夹路径}\.Android\debug.keystore
。你可以在YouTube上找到很多关于这个的视频
在终点站,我收到了一把SHA-1钥匙!我只需进入Firebase->项目设置,然后在页面底部添加了我的密钥
我希望它能帮助你