我正在尝试使用我的应用中的Firebase与Microsoft进行身份验证。我按照教程https://firebase.google.com/docs/auth/android/microsoft-oauth中提到的步骤进行操作。
以下是我的应用程序中的代码段-
MSAuthManager.java
public void loginOutlook(Context context) {
FirebaseAuth firebaseAuth = FirebaseAuth.getInstance();
Task<AuthResult> pendingResultTask = firebaseAuth.getPendingAuthResult();
if (pendingResultTask == null) {
OAuthProvider.Builder provider = OAuthProvider.newBuilder("microsoft.com");
provider.setScopes(asList(SCOPES));
firebaseAuth.startActivityForSignInWithProvider((Activity) context, provider.build())
.addOnSuccessListener(this)
.addOnFailureListener(this)
.addOnCanceledListener(this);
}
}
AndroidManifest.xml
<activity android:name="com.microsoft.identity.client.BrowserTabActivity">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="https://**********.firebaseapp.com/__/auth/handler"
android:host="auth" />
</intent-filter>
</activity>
注意-我已经使用登录屏幕上的Firebase通过Google登录对用户进行了身份验证。
但是,当我开始身份验证过程时,会启动一个自定义选项卡,将我带到Microsoft登录页面,然后自动关闭并重定向我,并出现以下错误-
FirebaseAuthWebException: The web operation was canceled by the user.
谁能告诉我我在这里想念什么吗?
答案 0 :(得分:0)
我遇到了同样的问题,对我来说是因为输入的密码错误,所以->用户取消了Web操作。
您必须管理已保存的密码或清除Chrome或三星Internet浏览器的缓存和数据。