Android 如何删除谷歌登录?
我要发布我的应用程序。该应用程序还通过用户登录使用Firebase身份验证。谷歌拒绝我的应用程序如下: “我们不允许使用任何访问谷歌的谷歌API 帐户数据(包括谷歌登录和谷歌游戏服务) 在针对儿童的应用程序中。” 我试图删除谷歌登录所需的线路,但该应用程序仍试图在登录期间建议手机中的Gmail帐户列表。如何删除谷歌登录 这是我与登录和Firebase观察用户相关的主要活动代码Android 如何删除谷歌登录?,android,firebase-authentication,google-signin,Android,Firebase Authentication,Google Signin,我要发布我的应用程序。该应用程序还通过用户登录使用Firebase身份验证。谷歌拒绝我的应用程序如下: “我们不允许使用任何访问谷歌的谷歌API 帐户数据(包括谷歌登录和谷歌游戏服务) 在针对儿童的应用程序中。” 我试图删除谷歌登录所需的线路,但该应用程序仍试图在登录期间建议手机中的Gmail帐户列表。如何删除谷歌登录 这是我与登录和Firebase观察用户相关的主要活动代码 // Update authentication UI. final Observer<Fireb
// Update authentication UI.
final Observer<FirebaseUser> fireaseUserObserver = new Observer<FirebaseUser>() {
@Override
public void onChanged(@Nullable final FirebaseUser firebaseUser) {
invalidateOptionsMenu();
if (firebaseUser == null) {
triggerSignIn();
} else {
Log.d(TAG, "Current user: "
+ firebaseUser.getEmail() + " " + firebaseUser.getDisplayName());
}
}
};
private void triggerSignIn() {
Log.d(TAG, "Attempting SIGN-IN!");
List<AuthUI.IdpConfig> providers = new ArrayList<>();
// Configure the different methods users can sign in
providers.add(new AuthUI.IdpConfig.EmailBuilder().build());
//***** Below I tried to remove google sign in feature from the app
//providers.add(new AuthUI.IdpConfig.GoogleBuilder().build());
startActivityForResult(
AuthUI.getInstance()
.createSignInIntentBuilder()
.setAvailableProviders(providers)
.build(),
RC_SIGN_IN);
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == RC_SIGN_IN) {
// If sign-in is successful, update ViewModel.
if (resultCode == RESULT_OK) {
Log.d(TAG, "Sign-in SUCCESS!");
authenticationViewModel.updateFirebaseUser();
} else {
Log.d(TAG, "Sign-in FAILED!");
}
} else {
Log.e(TAG, "Unrecognized request code: " + requestCode);
}
}
private void triggerSignOut() {
subscriptionViewModel.unregisterInstanceId();
AuthUI.getInstance().signOut(this)
.addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
Log.d(TAG, "User SIGNED OUT!");
authenticationViewModel.updateFirebaseUser();
}
});
}
//更新身份验证用户界面。
最终观察员fireaseUserObserver=新观察员(){
@凌驾
更改后的公共void(@Nullable final FirebaseUser FirebaseUser){
无效操作菜单();
if(firebaseUser==null){
触发信号素();
}否则{
Log.d(标记“当前用户:”
+firebaseUser.getEmail()+“”+firebaseUser.getDisplayName());
}
}
};
私有无效触发器签名(){
Log.d(标记“正在尝试登录!”);
列表提供程序=新的ArrayList();
//配置用户可以登录的不同方法
add(新的AuthUI.IdpConfig.EmailBuilder().build());
//*****下面我试图从应用程序中删除谷歌登录功能
//add(新的AuthUI.IdpConfig.GoogleBuilder().build());
startActivityForResult(
AuthUI.getInstance()
.CreateSignInEntBuilder()
.setAvailableProviders(提供程序)
.build(),
RC_登录);
}
@凌驾
ActivityResult上的公共void(int请求代码、int结果代码、意图数据){
super.onActivityResult(请求代码、结果代码、数据);
if(requestCode==RC\u登录){
//如果登录成功,请更新ViewModel。
if(resultCode==RESULT\u OK){
Log.d(标记“登录成功!”);
authenticationViewModel.updateFirebaseUser();
}否则{
Log.d(标记“登录失败!”);
}
}否则{
Log.e(标签,“无法识别的请求代码:”+requestCode);
}
}
私有无效触发器签出(){
subscriptionViewModel.unregisterInstanceId();
AuthUI.getInstance().signOut(此)
.addOnCompleteListener(新的OnCompleteListener(){
@凌驾
未完成的公共void(@NonNull任务){
Log.d(标记“用户已注销!”);
authenticationViewModel.updateFirebaseUser();
}
});
}
我想我找到了答案。应关闭智能锁。您是否在某处打开siginin intent?