firebase / firebase/FirebaseUI-Android
Firebase UI Android v10.0.0-beta01 Release
- 主要语言
- Kotlin
- 星标
- 4.8k
- 派生
- 1.9k
- 平均合并
- 2 天 9 小时
- 30 天内合并 PR
- 42
描述
# Firebase UI Android v10.0.0-beta01 Release
We're excited to announce **Firebase UI Android v10.0.0-beta01**. This major update upgrades this library to natively support Jetpack Compose.
## What's New in Beta
This development phase focused on 3 key areas of the Auth module:
- **Compose Upgrade**: Removing legacy XML-based components in favor of modern Kotlin-based Composable components.
- **API Redesign**: A complete redesign to better support developers and improve maintenance.
- **Feature Development:** Build and improve upon a suite of features to provide a complete set of authentication flows, including MFA, custom providers and multi-app support.
Note: There are no major changes to the other Firebase UI Android modules (database, firestore and storage).
### Improved Core API
The new API comes packed with a host of new supporting features and utilities for managing authentication in your applications. New features include:
- **FirebaseAuthScreen**: A single entry point that manages the entire auth flow based on your configuration i.e AuthUIConfiguration.
- **AuthUIConfiguration:** A type-safe configuration object that defines providers, UI theming, MFA, anonymous upgrade, and validation rules for the authentication flow.
- **Custom auth injection**: For adding custom authentication via create(app, auth).
### Native Compose UI & Theming
- **Fully Themed**: With `AuthUITheme`, buttons and inputs automatically adopt your app’s Material branding. You can override typography, shapes, and colors, or inject your own ProviderStyle for distinct button looks.
- **Slot APIs**: The new `EmailAuthScreen` and `PhoneAuthScreen` expose slot APIs, giving you access to state (`EmailAuthContentState`) while letting you render your own UI.
### State Management
- **State Management:** Access multiple supporting functions for managing authentication state is your application. Included in this release are `isSignedIn()`, `getCurrentUser()`, and `authStateFlow` to expose authentication state reactively.
- **Reactive Streams:** Built on Kotlin Flow for improved integration with Compose and modern Android architecture.
- **Lifecycle Management:** Controller returned by `createAuthFlow(configuration)` with `start()`, `cancel()`, and `dispose()` methods.
- **Flow Control:** `start()` drives authentication flow per configuration.
- **Safe Cancellation:** `cancel()` transitions to Cancelled state gracefully.
- **Resource Management:** `dispose()` releases coroutines and listeners to prevent memory leaks
## Sample app
The repository's sample application has been upgraded to use the new updates. Updated features include:
- **Upgraded application**: A "Quickstart" example using FirebaseAuthScreen to demonstrate how to implement a full authentication flow with just a few lines of code.
- **Advanced Customization (Slot APIs)**: A deep dive into using the new Slot APIs (EmailAuthScreen, PhoneAuthScreen), showing how to inject your own custom UI layouts while retaining the library's state management and validation logic.
- **Theming & Styling:** Examples of using AuthUITheme.fromMaterialTheme() to inherit your app’s branding, and using ProviderStyle to create custom buttons.
- **Feature Walkthroughs**: End-to-end demonstrations of complex flows, including federated providers, Custom providers, Multi-Factor Authentication (SMS & TOTP) enrollment and Deep Linking.
## Try it out
Documentation and source for the updated library are in the [`v10.0.0-beta-01` branch](https://github.com/firebase/FirebaseUI-Android/tree/version-10.0.0-beta01).
Check out [auth/README.md](https://github.com/firebase/FirebaseUI-Android/blob/version-10.0.0-beta01/auth/README.md) to get started or [upgrade-to-10.0.md](https://github.com/firebase/FirebaseUI-Android/blob/version-10.0.0-beta01/docs/upgrade-to-10.0.md) to learn how to migrate from v9.
We're seeking your feedback as we continue shaping this project, so let us know what you think by commenting below or opening a new issue\!
贡献指南
调研方向
公告指向 version-10.0.0-beta01 分支、auth/README.md 和 docs/upgrade-to-10.0.md。先检查这些已发布的材料;要视为完成,需要有具体的文档或 release 后续工作,但此 issue 未指定具体内容。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- android, firebase, kotlin
- 领域
- authentication, documentation, mobile-dev, release
- Issue 类型
- 文档
- 难度
- 5/5
- 预计耗时
- 一周以上
- 活跃度
- 停滞
- 描述清晰度
- 需要澄清
- 新手友好度
- 15/100