Flutter notes

Flutterに関するメモ書き

VOICEVOXのopenapiを叩く

github.com

をFlutterから触りたい。

future-architect.github.io

を参考に進める。

$ brew install openapi-generator

$ wget https://raw.githubusercontent.com/Hiroshiba/voicevox/main/openapi.json
$ openapi-generator generate -i openapi.json -g dart -o openapi

$ cd openapi
$ flutter pub get
# pubspec.yaml
  openapi:
    path: openapi
# main.dart
import 'package:openapi/api.dart';

Error: A library can't opt out of null safety by default, when using sound null safety.

なるほど…Null Safety対応してないのね。

aakira.app

を参考に仕切り直し。

$ openapi-generator generate -i openapi.json -g dart-dio-next -o openapi
# pubspec.yaml
  dio:
$ cd openapi
$ flutter pub get
$ flutter packages pub run build_runner build --delete-conflicting-outputs
# main.dart

import 'package:openapi/openapi.dart';

Error: Type 'Uint8List' not found.

なんと…

# default_api.dart

import 'dart:typed_data';

を追加して逃げた。

# main.dart

  final api =
      Openapi(basePathOverride: dotenv.env['API_BASE_PATH']).getDefaultApi();
  final response = await api.versionVersionGet();
  print(response);

これで無事バージョンが取れた。

flutter: 0.2.0