Buscar pacotes, repositórios e categorias de apps

Detalhes do pacotev0.0.16

desktop_webview_auth

Este pacote habilita o OAuth do Firebase no desktop por meio de webview

AndroidiOSWebmacOSWindowsLinux
Downloads em 30 dias
53,8 mil
Curtidas
54
Pontos Pub
120

Instalar pacote

flutter pub add desktop_webview_auth

Visão geral do pacote

Orientação gerada a partir de informações públicas. Apenas para referência.

Um pacote Flutter que habilita a autenticação OAuth do Firebase em plataformas desktop (macOS, Windows, Linux) usando um webview. Ele fornece uma maneira contínua de lidar com fluxos OAuth ao incorporar uma janela do navegador dentro do aplicativo, permitindo que os usuários façam login com o Firebase mantendo segurança e experiência do usuário. O pacote é especialmente útil para aplicativos que exigem autenticação em ambientes desktop onde o suporte nativo ao OAuth pode ser limitado. Ele se integra diretamente ao Firebase Auth e funciona em múltiplas plataformas, incluindo Android, iOS, Web e sistemas operacionais desktop.

Casos de uso

  • Autenticação de aplicativo desktop com o Firebase
  • Fluxo OAuth em aplicativos de desktop multiplataforma
  • Login seguro por meio de WebView no macOS, Windows e Linux
  • Integrando o Firebase Auth em aplicativos de desktop
  • Gerenciando redirecionamentos OAuth em ambientes de desktop

Principais recursos

  • Suporta OAuth do Firebase em plataformas de desktop
  • Usa webview embutido para autenticação
  • Compatibilidade multiplataforma
  • Manuseio seguro de token
  • Integração simplificada com o Firebase Auth
  • Gerencia redirecionamentos OAuth automaticamente

Indicado para

  • Desenvolvedores criando aplicativos para desktop com autenticação do Firebase
  • Aplicativos que exigem OAuth no macOS, Windows ou Linux
  • Projetos que precisam de experiências de login seguras e nativas no desktop
  • Equipes direcionadas para implantação multiplataforma com autenticação consistente
  • Desenvolvedores Flutter em busca de uma solução confiável de OAuth para desktop

Considerações

  • Requer configuração correta do OAuth no Console do Firebase
  • Pode ser necessário esquemas de URL personalizados para o tratamento de redirecionamento
  • Limitado à integração com o Firebase Auth
  • O comportamento do Webview pode variar levemente entre os sistemas operacionais de desktop
  • Não adequado para casos de uso exclusivamente móveis

README original

Snapshot do README original do repositório-fonte vinculado. Consulte o repositório para o conteúdo mais recente.

Desktop webview auth

Chat on Discord

This package enables Firebase OAuth on desktop platforms via webview

⚠️ Maintenance status: not actively maintained

This package was built to fill a gap: OAuth sign-in flows for Flutter desktop apps, at a time when the official Firebase solutions had no desktop support.

It still works, and for some use cases it remains the nicest desktop OAuth experience available — but it is not integrated with the wider FlutterFire ecosystem, and Invertase is no longer actively developing it. We will keep the repository public and accept the occasional community PR, but there is no guaranteed maintenance, no roadmap, and no support commitment. Issues may go unanswered.

It's kept public because it's still useful as-is, and because it's a solid starting point for anyone wanting to build a pure-Dart auth implementation. If you depend on it, please pin your version and be prepared to fork.

Supported providers:

  • Google
  • Facebook
  • Twitter

Installation

macOS setup

The recaptcha verification flow is done on the local server, and it requires that the app has the following in the Release.entitlements:

<key>com.apple.security.network.server</key>
<true/>
Linux setup

To display webview on Linux, WebKit2GTK development libraries are used, if you don't have it already installed:

Ubuntu:

apt install libwebkit2gtk-4.0-dev

Fedora:

dnf install webkit2gtk3-devel

Additionally, if Flutter is installed using snap, you might face issues compiling the app, to fix you would need to uninstall the snap version and install Flutter manually on Linux.

Windows setup

Make sure you are on latest stable channle of Flutter, and have installed the requirements as mentioned here.

Nothing extra is needed to get started on Windows.

Add dependency
flutter pub add desktop_webview_auth
Imports
import 'package:desktop_webview_auth/desktop_webview_auth.dart';
import 'package:desktop_webview_auth/google.dart';
import 'package:desktop_webview_auth/facebook.dart';
import 'package:desktop_webview_auth/twitter.dart';

Usage

  • Configure OAuth providers in firebase console
  • Create an instance of ProviderArgs
final googleSignInArgs = GoogleSignInArgs(
  clientId:
    '448618578101-sg12d2qin42cpr00f8b0gehs5s7inm0v.apps.googleusercontent.com',
  redirectUri:
    'https://react-native-firebase-testing.firebaseapp.com/__/auth/handler',
  scope: 'email',
)
  • call DesktopWebviewAuth.signIn
try {
    final result = await DesktopWebviewAuth.signIn(args);

    print(result?.accessToken);
    print(result?.tokenSecret);
} catch (err) {
    // something went wrong
}
  • create an instance of OAuthCredential and sign in
import 'package:firebase_auth/firebase_auth.dart';

final credential = GoogleAuthProvider.credential(accessToken: result.accessToken)

FirebaseAuth.instance.signInWithCredential(credential);

Categorias

Dependências

Lista de dependências 3 itens

  • crypto^3.0.3
  • http^1.0.0
  • plugin_platform_interface^2.1.4

Repositório-fonte

Projetos que usam este pacote