我使用JS库调用firebase.auth().signInWithEmailAndPassword(email, password)并获取一个User对象.该User对象包含一个refreshToken.
我curl 'https://docs-examples.firebaseio.com/rest/saving-data/auth-example.json?auth=TOKEN'用来拨打Firebase.
令牌最终会过期.为了使它看起来像应用程序(iOS和macOS)具有持久登录,我想刷新令牌,我如何使用REST或JS库?我在文档中找不到任何允许我使用它refreshToken来获取新内容的调用token.
在控制台firebase中,在菜单Authentification - > Templates中
有一个短信验证模板:
%LOGIN_CODE% is your verification code.
Run Code Online (Sandbox Code Playgroud)
如何更改此消息模板?
我经历了这个,就过程而言,我做到了.
但是当我从Play商店安装应用程序时,我无法使用google sign in按钮登录.
我已经使用Firebase进行谷歌登录.当我点击登录按钮时,选择帐户的选项即将到来,但它没有登录或执行任何操作.
那么我哪里可能出错?
有谁知道令牌到期需要多长时间?现在没有选项可以在控制台上设置令牌有效性.
我们正在使用API Gateway和Lambda在AWS上构建移动和Web应用程序,目前正在评估我们是否应该使用所有AWS Mobile Servcies(Cognito,Analytics,Mobile Hub等),或者我们是否应该使用Firebase(这提供了一些优势)喜欢远程配置).
我认为使用像Google Analytics,远程配置,崩溃报告,通知这样的firebase的非功能部分应该可以使用AWS后端.部分我不确定是身份验证层.
AWS Cognito可以很好地集成到API Gateway和Lamdba中,例如,只有经过身份验证的用户才能执行某些API调用.
如果我们使用Firebase身份验证,可以达到相同的行为吗?这有什么好的或坏的经历?
google-analytics amazon-web-services firebase amazon-cognito firebase-authentication
我计划创建一个名为users的主树,其中包含用户名不同的用户名.因此,从每个用户名将包括他们的数据,例如全名,地址,电话号码
我想知道如何在用户登录其个人资料时获取每个用户的数据.
我正在创建我的第一个Firebase应用程序.它的一个要求是它在网络不可用时运行.Firebase指南指出:
启用磁盘持久性使我们的应用程序即使在应用程序重新启动后也能保持其所有状态.我们只需一行代码即可启用磁盘持久性. FirebaseDatabase.getInstance()setPersistenceEnabled(真). 启用磁盘持久性后,我们的同步数据和写入将在应用程序重新启动后持久保存到磁盘,我们的应用程序应在脱机情况下无缝工作.
另一个要求是使用Google登录.所以在我MainActivity检查用户是否已登录时,如果没有,我启动了SignInActivity.( SignInActivity来自Firebase示例.)SignInActivity工作,用户登录,并MainActivity再次启动.现在我的应用程序在代码行崩溃,FirebaseDatabase.getInstance().setPersistenceEnabled(true); 并显示以下消息:
必须在FirebaseDatabase实例的任何其他使用之前调用setPersistenceEnabled().
现在,如果我重新启动我的应用程序,用户已登录,SignInActivity未启动,我的应用运行正常.
用户登录后如何避免此崩溃的任何建议?
当我发布这个问题时,我收到了一个重新安置FirebaseDatabase.getInstance().setPersistenceEnabled(true);
到我的"应用程序类"的建议.我得到完全相同的结果...... SignInActivity开始,完成,然后我就崩溃了setPersistenceEnabled.
以下是我的MainActivity onCreate:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Calls to setPersistenceEnabled() must be made before any other usage of FirebaseDatabase instance.
// Crash here upon returning from SignInActivity.
FirebaseDatabase.getInstance().setPersistenceEnabled(true);
mFirebaseDbReference = FirebaseDatabase.getInstance().getReference();
// Initialize Firebase Auth
mFirebaseAuth = FirebaseAuth.getInstance();
mFirebaseUser = mFirebaseAuth.getCurrentUser();
if (mFirebaseUser == null) {
// …Run Code Online (Sandbox Code Playgroud) 使用Firebase,如何捕获特定异常并优雅地告诉用户?例如:
FirebaseAuthInvalidCredentialsException:电子邮件地址格式错误.
我正在使用下面的代码使用电子邮件和密码注册用户,但我不是那么高级的java.
mAuth.createUserWithEmailAndPassword(email, pwd)
.addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if (!task.isSuccessful()) {
//H.toast(c, task.getException().getMessage());
Log.e("Signup Error", "onCancelled", task.getException());
} else {
FirebaseUser user = mAuth.getCurrentUser();
String uid = user.getUid();
}
}
});
Run Code Online (Sandbox Code Playgroud) 我正在构建我的第一个iOS应用程序,我使用Firebase来处理身份验证,数据库等.我添加了一个注册屏幕,并使用以下代码创建一个新用户:
FIRAuth.auth()?.createUserWithEmail(emailAddress.text!, password: password.text!, completion: { (user, error) in
})
Run Code Online (Sandbox Code Playgroud)
当用户点击注册按钮时,会有一个segue应该将它们带回原始登录视图控制器.但是,当我运行应用程序时,它会挂起启动屏幕.这是调试器输出:
2016-06-19 14:35:05.402 unitaskr[4386:82981] Configuring the default app.
2016-06-19 14:35:05.413 unitaskr[4386:] <FIRAnalytics/INFO> Firebase Analytics v.3200000 started
2016-06-19 14:35:05.414 unitaskr[4386:] <FIRAnalytics/INFO> To enable debug logging set the following application argument: -FIRAnalyticsDebugEnabled (see ...)
2016-06-19 14:35:05.419: <FIRInstanceID/WARNING> FIRInstanceID AppDelegate proxy enabled, will swizzle app delegate remote notification handlers. To disable add "FirebaseAppDelegateProxyEnabled" to your Info.plist and set it to NO
2016-06-19 14:35:05.418 unitaskr[4386:] <FIRAnalytics/INFO> Successfully created Firebase Analytics App Delegate Proxy automatically. …Run Code Online (Sandbox Code Playgroud) 我正在尝试从经过身份验证的用户(使用Firebase身份验证)检索Google Access令牌以访问Google REST API,例如YouTube Data API.
我已经在Firebase-UI for Android - Auth库的帮助下成功地在我的应用中集成了Google登录.从FirebaseUser.getToken()方法检索的令牌不是REST API的有效Google Access令牌.
user.getToken(true).addOnCompleteListener(new OnCompleteListener<GetTokenResult>() {
public void onComplete(@NonNull Task<GetTokenResult> task) {
if (task.isSuccessful()) {
String token = task.getResult().getToken();
// 'token' is not a Google Access Token
}
}
});
Run Code Online (Sandbox Code Playgroud)
在Google Sign-In for Web指南中,可以通过调用获取访问令牌var token = result.credential.accessToken;,但我在Android中找不到类似的方法.
有什么投入?如果我没有提供足够的信息,请在这里发表评论.谢谢 :)