Flutter Windows Google Authentication Without google_sign_in

zz2j4svz  于 2023-08-07  发布在  Windows
关注(0)|答案(2)|浏览(141)

google_sign_in包似乎不支持Windows上的Google身份验证。有没有一种方法可以在Flutter Windows上进行Google登录而无需此软件包?我猜我们需要打开一个Web视图,将用户带到Google登录,然后在用户登录后以某种方式检索令牌。如果有样品就太好了。

zzoitvuj

zzoitvuj1#

可以使用googleapis_auth

import 'package:googleapis_auth/auth_io.dart';
import 'package:url_launcher/url_launcher.dart';

void _lauchAuthInBrowser(String url) async {
  await canLaunch(url) ? await launch(url) : throw 'Could not lauch $url';
}

void _loginWindowsDesktop() {
  var id = ClientId(
    <clientID>,
    <secret>,
  );
  var scopes = [
    'email',
    'https://www.googleapis.com/auth/drive',
  ];
  
  var client = Client();
  obtainAccessCredentialsViaUserConsent(
     id, scopes, client, (url) => _lauchAuthInBrowser(url))
       .then((AccessCredentials credentials) {
    final driveApi = DriveApi(client);
    client.close();
  });
}

字符串

ie3xauqp

ie3xauqp2#

在这个插件中有一个注意事项-不要在flutter应用程序中使用,因为它可能会被反编译和秘密暴露。其他人也有类似的需求,并做了一个解决方案https://bselwesiuk.medium.com/social-authentication-in-flutter-desktop-apps-c8c0599e13d3。我很快就会自己测试。

相关问题