web-dev-qa-db-ja.com

Flutter / Dart用のGoogleSheets API v4

Dart / Flutter のGoogle Sheets API v4サポートはありますか?はいの場合、いつ来るのですか?すでに多くの言語をサポートしていますが、Dart/Flutterは ガイド にリストされていません。

7
Din

https://pub.dartlang.org/packages/googleapis Flutterで使用でき、Sheetsv4をサポートします

も参照してください

12

プロジェクトを作成し、そのプロジェクトのシートAPIを有効にしてから、「ロボットスタイル」のサービスアカウントを作成し、キーをJSONとしてダウンロードしました。次に、Googleスプレッドシートを作成し、そのキーに注意して、一般にアクセスできるようにしました。

このコードは、新しいデータ行を追加することにより、既存のシートを接続して更新します。エラー処理はありませんが、フローを視覚化するのに役立ついくつかのprint()ステートメント。

// Key for service account copied from downloaded file for demo purposes ;-)
final _key = {
  "type": "service_account",
  "project_id": //etc
  // ...
  // ...
};

print('getting oauth');
auth
    .obtainAccessCredentialsViaServiceAccount(
        auth.ServiceAccountCredentials.fromJson(_key),
        scopes,
        http.Client())
    .then((auth.AccessCredentials cred) {
  print('got oauth');

  auth.AuthClient client = auth.authenticatedClient(http.Client(), cred);
  SheetsApi api = new SheetsApi(client);
  ValueRange vr = new ValueRange.fromJson({
    "values": [
      [ // fields A - J
        "15/02/2019", "via API 3", "5", "3", "3", "3", "3", "3", "3", "3"
      ]
    ]
  });
  print('about to append');
  api.spreadsheets.values
      .append(vr, '1cl...spreadsheet_key...W5E', 'A:J',
          valueInputOption: 'USER_ENTERED')
      .then((AppendValuesResponse r) {
    print('append completed.');
    client.close();
  });
  print('called append()');
});
print('ended?');

}

4
Michael Davies

基本的な操作の実行に役立つDartサードパーティライブラリがあります https://pub.dev/packages/gsheets

公式ライブラリを使用することもできます https://pub.dartlang.org/packages/googleapis これはほとんどすべての操作を実行するのに役立ちますが、使用するのがより難しく、APIの知識が必要な場合があります https://developers.google.com/sheets/api/reference/rest

0