google_sign_in 4.1.1

  • Readme
  • Changelog
  • Example
  • Installing
  • 100

google_sign_in #

pub package

用于Google登录的 Flutter插件.

注意 :此插件仍在开发中,某些API可能尚不可用. 欢迎反馈请求请求

Android integration #

要访问Google登录,您需要确保注册您的应用程序 .

除非您正在使用需要此文件的Google服务,否则无需在应用程序中包含google-services.json文件. 您确实需要使用Google Cloud Platform API管理器启用所需的OAuth API. 例如,如果您想模仿Google登录示例应用程序的行为,则需要启用Google People API .

确保已在控制台中填写" OAuth同意"屏幕中的所有必填字段. 否则,您可能会遇到APIException错误.

iOS integration #

  1. First register your application.
  2. 确保在步骤1中下载的文件名为GoogleService-Info.plist .
  3. GoogleService-Info.plist移动或复制到[my_project]/ios/Runner目录中.
  4. 打开Xcode,然后右键单击Runner目录并选择Add Files to "Runner" .
  5. 从文件管理器中选择GoogleService-Info.plist .
  6. 将出现一个对话框,要求您选择目标,然后选择" Runner目标.
  7. 然后将下面的CFBundleURLTypes属性添加到[my_project]/ios/Runner/Info.plist文件中.
<!-- Put me in the [my_project]/ios/Runner/Info.plist file -->
<!-- Google Sign-in Section -->
<key>CFBundleURLTypes</key>
<array>
	<dict>
		<key>CFBundleTypeRole</key>
		<string>Editor</string>
		<key>CFBundleURLSchemes</key>
		<array>
			<!-- TODO Replace this value: -->
			<!-- Copied from GoogleService-Info.plist key REVERSED_CLIENT_ID -->
			<string>com.googleusercontent.apps.861823949799-vc35cprkp249096uujjn0vvnmcvjppkn</string>
		</array>
	</dict>
</array>
<!-- End of the Google Sign-in Section -->

Usage #

Import the package #

要使用此插件,请按照插件安装说明进行操作 .

Use the plugin #

将以下导入添加到您的Dart代码中:

import 'package:google_sign_in/google_sign_in.dart';

使用所需的范围初始化GoogleSignIn:

GoogleSignIn _googleSignIn = GoogleSignIn(
  scopes: [
    'email',
    'https://www.googleapis.com/auth/contacts.readonly',
  ],
);

Full list of available scopes.

现在,您可以使用GoogleSignIn类在Dart代码中进行身份验证,例如

Future<void> _handleSignIn() async {
  try {
    await _googleSignIn.signIn();
  } catch (error) {
    print(error);
  }
}

Example #

Google登录示例应用程序中找到示例接线.

API details #

有关更多API详细信息,请参见google_sign_in.dart .

Issues and feedback #

请提出问题以发送反馈或报告错误. 谢谢!

4.1.1 #

  • 支持以编程方式将clientId传递到Web插件.

4.1.0 #

  • 默认情况下支持网络.
  • 需要Flutter SDK v1.12.13+hotfix.4或更高版本.

4.0.17 #

  • 添加缺少的文档,并修复示例应用程序中迫在眉睫的未来.

4.0.16 #

  • 从pubspec.yaml中删除不推荐使用的author:字段
  • 将插件迁移到pubspec平台清单.
  • 需要Flutter SDK 1.10.0或更高版本.

4.0.15 #

  • 从接口导出SignInOption,因为它在前端中用作一种类型.

4.0.14 #

  • 移植插件代码以使用联合平台接口,而不是直接使用MethodChannel.

4.0.13 #

  • 修复GoogleUserCircleAvatar以处理新样式的个人资料图片网址.

4.0.12 #

  • 将google_sign_in插件移至google_sign_in / google_sign_in,以准备联合实现.

4.0.11 #

  • 将iOS CocoaPod依赖关系更新为5.0,以解决不建议使用的API使用问题.

4.0.10 #

  • 删除AndroidX警告.

4.0.9 #

  • 更新和迁移iOS示例项目.
  • 定义iOS的clang模块.

4.0.8 #

  • 摆脱MethodCompleter并使用链接的期货序列化异步操作. 这可以防止在错误处理区域中使用登录方法时出现错误.

4.0.7 #

  • 从使用api切换到implementation以依赖play-services-auth ,从而防止某些Android配置中版本不匹配的构建失败.

4.0.6 #

  • 修复了在调试模式下从catchError()泄漏PlatformException .

4.0.5 #

  • 使用针对APIException错误的解决方案更新自述APIException .

4.0.4 #

  • 还原4.0.3中的更改.

4.0.3 #

  • 将番石榴更新为27.0.1-android .
  • 添加正确的@NonNull批注以减少编译器警告.

4.0.2 #

  • 将缺少的模板类型参数添加到invokeMethod调用中.
  • 将Flutter的最低版本提高到1.5.0.
  • 必要时,将invokeMethod替换为invokeMapMethod.

4.0.1+3 #

  • 更新示例以优雅地处理空用户信息.

4.0.1+2 #

  • 修复README.md以正确拼写GoogleService-Info.plist .

4.0.1+1 #

  • 删除类别.

4.0.1 #

  • 在构建时记录有关先前AndroidX迁移的更详细的警告.

4.0.0+1 #

  • 当应用缺少必要的URL方案时,为iOS添加了更好的错误消息.

4.0.0 #

  • 突破性的改变 . 从已弃用的原始Android支持库迁移到AndroidX. 这不应该导致任何功能上的变化,但是如果使用原始插件的Android应用程序也必须迁移 ,因此它们也必须进行迁移 .

    这最初是在3.3.0更新中错误地推送的.

3.3.0+1 #

  • 恢复最新的3.3.0更新 . 已知3.3.0已损坏,应该增加主版本号而不是次版本号. 然而,对于已经迁移的任何人来说,此还原本身都是无效的. 已将其应用迁移到AndroidX的任何人都应立即更新为4.0.0 . 那是3.3.0的正确版本的新推送.

3.3.0 #

  • 不好 这是一个重大更改,在次要版本升级中错误地发布了该更改,这是永远不会发生的. 由3.3.0 + 1恢复.

  • 突破性的改变 . 从已弃用的原始Android支持库迁移到AndroidX. 这不应该导致任何功能上的变化,但是如果使用原始插件的Android应用程序也必须迁移 ,因此它们也必须进行迁移 .

3.2.4 #

  • 将play-services-auth版本增加到16.0.1

3.2.3 #

  • 更改示例的google-services.json和GoogleService-Info.plist.

3.2.2 #

  • 处理登录时请勿使用结果代码. 由于结果代码始终返回"已取消",因此可以得到更好的错误代码.

3.2.1 #

  • 将http版本设置为与flutter_test兼容.

3.2.0 #

  • 添加对清除Android身份验证缓存的支持.

3.1.0 #

  • 添加支持以恢复对Android的身份验证.

3.0.6 #

  • 删除不稳定的displayName断言

3.0.5 #

  • 添加了缺少的http软件包依赖性.

3.0.4 #

  • 更新了Gradle工具以匹配Android Studio 3.1.2.

3.0.3+1 #

  • 添加了有关在何处找到可用范围列表的文档.

3.0.3 #

  • 新增了对在Android上登录游戏的支持.

3.0.2 #

  • Google Play服务依赖性已更新至版本15.0.0.

3.0.1 #

  • Cocoapods 1.5.0的简化podspec,避免了应用档案中的链接问题.

3.0.0 #

  • 突破性的改变 . 设置SDK约束以匹配Flutter beta版本.

2.1.2 #

  • 添加了可由客户端实现的委托接口(IDelegate),以覆盖功能(例如,出于测试目的).

2.1.1 #

  • 修复了Dart 2类型错误.

2.1.0 #

  • 已在Swift项目中启用.

2.0.1 #

  • 将Android项目模板简化并升级到Android SDK 27.
  • 更新了软件包说明.

2.0.0 #

  • 突破性的改变 . 升级到Gradle 4.1和Android Studio Gradle插件3.0.1. 较早的Flutter项目也需要升级其Gradle设置才能使用此版本的插件. 说明可以在这里找到.
  • 放宽了对[11.4.0,12.0 [

1.0.3 #

  • 将FLT前缀添加到iOS类型

1.0.2 #

  • Support setting foregroundColor in the avatar.

1.0.1 #

  • 将GMS依赖项更改为11. +

1.0.0 #

  • 使GoogleUserCircleAvatar淡入占位符顶部的个人资料图片
  • 碰撞到发行版本

0.3.1 #

  • 更新了GMS,以始终将最新的修补程序版本用于11.0.x版本

0.3.0 #

  • 添加一个新的GoogleIdentity接口, GoogleIdentity接口由GoogleSignInAccount实现.
  • GoogleUserCircleAvatar移至" widgets"库(由基库导出以实现向后兼容性),并使其成为GoogleIdentity的实例,从而允许它被提供GoogleIdentity实现的其他程序包使用.

0.2.1 #

  • 插件(可以再次使用)可以在扩展FlutterActivity应用程序中FlutterActivity
  • 保证signInSilently不会抛出
  • 登录失败(由失败的init步骤引起)将不再阻止后续登录尝试

0.2.0 #

  • 更新了依赖性
  • 重大更改 :您需要在android/build.gradle的存储库部分中添加一个带有" https://maven.google.com"端点的maven部分. 例如:
allprojects {
    repositories {
        jcenter()
        maven {                              // NEW
            url "https://maven.google.com"   // NEW
        }                                    // NEW
    }
}

0.1.0 #

  • 更新为使用GoogleSignIn CocoaPod

0.0.6 #

  • 修复由nil uiDelegate登录导致的iOS崩溃

0.0.5 #

  • 要求在Android上使用support-v4库. 这是API的更改,因为插件用户将需要其活动类成为android.support.v4.app.FragmentActivity的实例. Flutter框架提供了开箱即用的此类活动: io.flutter.app.FlutterFragmentActivity
  • 忽略影响iOS模拟器的"管道破损"错误
  • 在iOS上更新为不建议使用的application:openURL:options:

0.0.4 #

  • 并发调用GoogleSignIn方法时,防止出现竞争情况(#94)

0.0.3 #

  • 修复signOut和断开连接(它们被静默忽略了)
  • 修复测试(#10050)

0.0.2 #

  • 如果用户已经登录,请勿尝试再次登录

0.0.1 #

  • 初始发行

example/README.md

google_sign_in_example #

演示如何使用google_sign_in插件.

Getting Started #

要获得Flutter入门方面的帮助,请查看我们的在线文档 .

Use this package as a library

1. Depend on it

将此添加到包的pubspec.yaml文件中:


dependencies:
  google_sign_in: ^4.1.1

2. Install it

您可以从命令行安装软件包:

使用Flutter:


$ flutter pub get

另外,您的编辑器可能支持flutter pub get . 查看您的编辑器文档以了解更多信息.

3. Import it

现在,在Dart代码中,您可以使用:


import 'package:google_sign_in/google_sign_in.dart';
  
Popularity:
描述该程序包相对于其他程序包的受欢迎程度. [更多]
100
Health:
从静态分析得出的代码运行状况. [更多]
100
Maintenance:
反映出软件包的整洁和最新状态. [更多]
100
Overall:
以上的加权分数. [更多]
100
了解有关得分的更多信息.

我们在2020年1月16日分析了此软件包,并在下面提供了得分,详细信息和建议. using: 分析已完成,状态使用以下命令 :

  • 飞镖:2.7.0
  • 高达:0.13.4
  • Flutter:1.12.13 + hotfix.5

Dependencies

Package Constraint Resolved Available
直接依赖
Dart SDK > = 2.0.0-dev.28.0 <3.0.0
flutter 0.0.0
google_sign_in_platform_interface ^1.0.0 1.0.3
google_sign_in_web ^0.8.2 0.8.3
meta ^1.0.4 1.1.8
传递依存关系
collection 1.14.11 1.14.12
flutter_web_plugins 0.0.0
js 0.6.1+1
matcher 0.12.6
path 1.6.4
quiver 2.1.2+1
sky_engine 0.0.99
stack_trace 1.9.3
typed_data 1.1.6
vector_math 2.0.8
开发依赖
flutter_test
http ^0.12.0

by  ICOPY.SITE