热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何在目标c中删除FirebaseAuth中的"使用电子邮件登录"

如何解决《如何在目标c中删除FirebaseAuth中的"使用电子邮件登录"》经验,为你挑选了1个好方法。

我通过谷歌和Facebook使用登录,因此我使用firebase Ui身份验证.我做对了,但我不想在登录页面中"登录电子邮件"按钮.我的登录页面是,在此输入图像描述

我的代码如下,

- (void)viewDidLoad {
    [super viewDidLoad];
    NSLog(@"%s","viewDidLoad");
    authUI = [FUIAuth defaultAuthUI];
    authUI.delegate = self;
    NSArray> *providers = @[[[FUIGoogleAuth alloc] init],[[FUIFacebookAuth alloc] init]];
    authUI.providers = providers;
}
- (void)viewDidAppear:(BOOL)animated
{
    [super viewDidAppear:animated];
    NSLog(@"%s","viewDidAppear");
    NSLog([self isUserSignedIn] ? @"YES":@"NO");
    if([self isUserSignedIn] == false){
        [self showLoginView];
    }
}
- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

-(BOOL)isUserSignedIn{
    NSLog(@"%s","isUserSignedIn");

    FIRUser *currentUser = [[FIRAuth auth] currentUser];
    NSLog(@"%@",currentUser);
    if(currentUser == NULL){
        return false;
    }
    else{
        return true;
    }

}
-(void)showLoginView{
    NSLog(@"%s","showLoginView");
    UINavigationController *cOntroller= [authUI authViewController];
    if(controller){
        [self presentViewController:controller animated:YES completion:nil];
    }
}
- (void)authUI:(FUIAuth *)authUI didSignInWithUser:(nullable FIRUser *)user error:(nullable NSError *)error {
    if (error == nil) {
        NSLog(@"%@",user.email);
        NSLog(@"%@",user.displayName);
    }
    else{
        NSLog(@"%@",error);
    }
}
- (IBAction)signOut:(id)sender {
    NSError *signOutError;
    BOOL status = [[FIRAuth auth] signOut:&signOutError];
    if (!status) {
        NSLog(@"Error signing out: %@", signOutError);
        return;
    }
    else{
        NSLog(@"SignedOut");
    }
}

在AppDelegate.m中添加了,

    - (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary *)options {
    NSString *sourceApplication = options[UIApplicationOpenURLOptionsSourceApplicationKey];
    NSLog(@"%@",url);
    return [[FUIAuth defaultAuthUI] handleOpenURL:url sourceApplication:sourceApplication];
}

如何删除"使用电子邮件登录".我只添加谷歌和Facebook作为提供商,如何在登录页面显示这个额外的按钮?



1> shamila..:
FUIAuth *authUI = [FUIAuth defaultAuthUI];
authUI.signInWithEmailHidden = YES;

从视图中删除了"使用电子邮件登录"按钮.


在Swift 4.2中,它是`authUI.isSignInWithEmailHidden = true`
推荐阅读
author-avatar
手机用户2502923495
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有