这是一种非常简单的谷歌方式,但我还没有处理过投递箱
\n\n\n注意:这里有一个简单的例子来说明该方法
\n
按着这些次序:
\n1-添加依赖项:
\ndependencies:\n  googleapis: ^0.56.1\n  google_sign_in: ^4.5.6\n2-添加这些导入:
\nimport \'package:googleapis/drive/v3.dart\' as drive;\nimport \'package:google_sign_in/google_sign_in.dart\' as signIn;\n3-谷歌登录
\n打开 main.dart,找到_incrementCounter()当用户点击加号按钮时调用的函数,然后进行如下编辑:
Future<void> _incrementCounter() async {\n  setState(() {\n    _counter++;\n  });\n\n  final googleSignIn = signIn.GoogleSignIn.standard(scopes: [drive.DriveApi.DriveScope]);\n  final signIn.GoogleSignInAccount account = await googleSignIn.signIn();\n  print("User account $account");\n} \n4-创建一个新的 Firebase 项目:
\n您可以勾选此项来创建项目,并启用 Auth Google。
\n5-启用 Google Drive API:
\n您还可以转到Google Cloud Console,查找搜索栏并搜索 \xe2\x80\x9cGoogle Drive API\xe2\x80\x9d。单击\xe2\x80\x9cENABLE\xe2\x80\x9d。
\n6-将文件上传到 Google 云端硬盘:
\nGoogleAuthClient.dart使用http包创建一个新文件。GoogleAuthClient 类基于 BaseCleint ,它已经支持所有标准 HTTP 请求:POST、GET 等。我们在内部包装另一个Client并实现发送函数,稍后我们将在其中注入身份验证标头。
import \'package:http/http.dart\' as http;\n\nclass GoogleAuthClient extends http.BaseClient {\n  final Map<String, String> _headers;\n\n  final http.Client _client = new http.Client();\n\n  GoogleAuthClient(this._headers);\n\n  Future<http.StreamedResponse> send(http.BaseRequest request) {\n    return _client.send(request..headers.addAll(_headers));\n  }\n}\n现在,我们使用上面用户帐户的身份验证标头创建一个 GoogleAuthClient,然后使用它创建一个 Google Drive API 对象 DriveApi。
\nfinal authHeaders = await account.authHeaders;\nfinal authenticateClient = GoogleAuthClient(authHeaders);\nfinal driveApi = drive.DriveApi(authenticateClient);\n最后,让\xe2\x80\x99s上传一个文件:
\nfinal Stream<List<int>> mediaStream =\n    Future.value([104, 105]).asStream().asBroadcastStream();\nvar media = new drive.Media(mediaStream, 2);\nvar driveFile = new drive.File();\ndriveFile.name = "hello_world.txt";\nfinal result = await driveApi.files.create(driveFile, uploadMedia: media);\nprint("Upload result: $result");\n| 归档时间: | 
 | 
| 查看次数: | 4174 次 | 
| 最近记录: |