インストール
ゼロから始める
SORI Flutter SDKは、pub.devのsorisdk_flutterパッケージとして配布されています。
パッケージページで、最新の公開バージョンと生成されたDart API referenceを確認できます。
SDKをFlutterアプリに統合する方法を示すFlutterサンプルアプリも提供しています。
SORI Example Flutter
サンプルアプリをチェックして、どのように動作するかをテストしてください。
既存プロジェクトへの統合
pub.devからパッケージを追加します。
flutter pub add sorisdk_flutterまたは、pubspec.yamlファイルに追加します。
dependencies:
sorisdk_flutter: ^0.3.1その後、次を実行します。
flutter pub getAndroid設定
このパッケージは、必要なAndroid権限とforeground microphone service宣言をプラグインmanifestからマージします。これには、マイク、ネットワーク、foreground service、通知関連の権限が含まれます。
アプリのAndroid minSdkは24以上にしてください。
android {
defaultConfig {
minSdk = 24
}
}Androidでは、startRecognition()が必要に応じて実行時マイク権限をリクエストし、権限が許可されると同じ開始リクエストを続行します。
アプリがAndroid 13以降をターゲットにし、foreground-service通知を通常どおり表示する必要がある場合は、認識開始前にアプリのフローで通知権限をリクエストしてください。
iOS設定
iOSアプリでは、ios/Runner/Info.plistにマイク使用説明を含める必要があります。
<key>NSMicrophoneUsageDescription</key>
<string>Audio recognition requires microphone access.</string>アプリがバックグラウンド中も認識を継続する設計の場合にのみ、background audio modeを追加してください。
<key>UIBackgroundModes</key>
<array>
<string>audio</string>
</array>Web設定
Flutterアプリにビルド時bridgeをインストールします。バージョン0.1.1は@sorisdk/web-audio 0.6.5を固定して使用します。
npm install --save-dev @sorisdk/flutter-web-bridge@0.1.1Webビルドの前に毎回browser runtimeを準備します。
npx sori-flutter-web prepare
flutter build web準備コマンドは必要なJavaScript、WASM、modelファイルをweb/sorisdk/に書き込みます。Flutterはこれらのアプリ所有ファイルをbuild/webにコピーします。
Flutter Webには、セキュアコンテキスト(https://またはhttp://localhost)、Web AudioとgetUserMedia()に対応したモダンブラウザ、短期有効なephemeral keyを返すアプリケーションサーバーendpointが必要です。Ephemeral Keyを参照してください。長期有効なsecret_keyをWebビルドに含めないでください。
これでSDKを使用する準備ができました。 次のステップは実装です。
