微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

android – Firebase用户界面 – 验证 – 使用自己的布局

是否可以使用我自己的布局& Android版Firebase UI Auth按钮?

我基本上想要实现自己选择身份提供者(google,facebook等)的屏幕,并从我的点击监听器开始相应的流程(例如使用Butterknife):

@OnClick(R.id.login_btn_signInGoogle)  
public void signInGoogle(View view) {  
  // Start google sign in flow <--- This is what I do not kNow how to do it  
}

@OnClick(R.id.login_btn_signInFacebook)  
public void signInFacebook(View view) {  
  // Start facebook sign in flow <--- This is what I do not kNow how to do it 
}

我知道firebase提供了自定义屏幕/主题的可能性,但对我的情况来说还不够.

在最坏的情况下,我将不得不使用标准的firebase sdk方法来实现它.

解决方法

现在,我们所能做的就是按照 here所述接受他们在firebaseui上的布局.如果我们不喜欢,我们必须自己登录.
我真的希望他们将来能提供一些定制服务.

在我的应用程序中,我有一个单独的徽标和一个单独的背景,因此当您尝试注册电子邮件时,徽标会消失,注册对话框不会干扰徽标,如here
你可以用.SetTheme和.Setlogo来做

startActivityForResult(
                        AuthUI.getInstance()
                                .createSignInIntentBuilder()
                                .setTheme(R.style.FirebaseLoginTheme)
                                .setlogo(R.drawable.logo)
                                .setProviders(Arrays.asList(
                                        new AuthUI.IdpConfig.Builder(AuthUI.FACEBOOK_PROVIDER).build(),new AuthUI.IdpConfig.Builder(AuthUI.GOOGLE_PROVIDER).build(),new AuthUI.IdpConfig.Builder(AuthUI.EMAIL_PROVIDER).build()))
                                .setIsSmartLockEnabled(false)
                                .build(),RC_SIGN_IN);

在styles.xml中编辑windowBackground for FirebaseLoginTheme:

<style name="FirebaseLoginTheme" parent="firebaseui">
    <item name="windowNoTitle">true</item>
    <item name="windowActionBar">false</item>
    <item name="android:windowFullscreen">true</item>
    <item name="android:windowContentOverlay">@null</item>
    <item name="android:windowBackground">@drawable/login</item>
</style>

原文地址:https://www.jb51.cc/android/309952.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐