TEXTBOOK SECTION / AI LEARNING

必要なパッケージを導入する

Flutterアプリケーション開発概論の「3Dモデルと描画」より、必要なパッケージを導入するを解説。生成AI、AI活用、DX、業務改善を実践しながら学べるオンライン教材です。

33Dモデルと描画Flutter / iOS / Android / MacOS / Windows / 基礎から学ぶ / 開発 / アプリ開発

OVERVIEW

この節で学べること

概要を表示する
項目内容
教材名Flutterアプリケーション開発概論
3Dモデルと描画
必要なパッケージを導入する
カテゴリFlutter / iOS / Android / MacOS / Windows / 基礎から学ぶ / 開発 / アプリ開発
学習内容生成AI、AI活用、DX、業務改善を実践しながら理解するための教材です。

TABLE OF CONTENTS

目次

CONTENT

ここから

Flutterには、画面表示やボタンなどの基本機能が標準で用意されています。一方、3Dモデルの表示、HTTP通信、端末内へのファイル保存といった専門的な機能は、外部パッケージを利用することで効率よく実装できます。

この章では、パッケージを管理するpubspec.yamlの役割を理解し、3Dモデルビューアーに必要なパッケージをプロジェクトへ追加します。

3.1 pubspec.yamlの役割

pubspec.yamlは、Flutterプロジェクト全体の設定を管理するファイルです。アプリ名、バージョン、対応するDart SDK、外部パッケージ、画像やフォントなどのアセット情報を記述します。

YAML形式では、行の先頭にある空白がデータの階層を表します。そのため、インデントがずれると、内容が正しくてもエラーになることがあります。通常は半角スペース2文字で階層をそろえ、タブ文字は使用しません。

今回のプロジェクトでは、Dart SDK 3.11以上4.0未満を利用する設定になっています。fileciteturn0file0L7-L8

environment:
  sdk: '>=3.11.0 <4.0.0'

3.2 必要なパッケージを追加する

このアプリでは、次の3つの外部パッケージを使用します。

flutter_3d_controllerは、GLBやGLTFなどの3DモデルをFlutterの画面内に表示するためのパッケージです。モデルの回転、拡大・縮小、カメラ位置の変更などを扱います。

httpは、インターネット上のデータやファイルを取得するためのパッケージです。今回の完成プログラムでは将来のダウンロード処理に備えて登録されています。

path_providerは、アプリが端末内へファイルを保存するときに、適切な保存先を取得するためのパッケージです。モデルを端末内へ保存し、再利用する機能を実装するときに使用します。

添付プログラムでは、次のバージョンが指定されています。fileciteturn0file0L10-L16

dependencies:
  flutter:
    sdk: flutter

  flutter_3d_controller: ^2.3.0
  http: ^1.6.0
  path_provider: ^2.1.5

バージョン番号の前にある^は、互換性が保たれる範囲で新しいバージョンを利用できる指定です。ただし、将来の更新によって動作やAPIが変わる可能性があります。教材を進める間は、添付プログラムと同じバージョンを使用します。

3.3 依存パッケージを取得する

pubspec.yamlへパッケージ名を書いただけでは、まだプロジェクト内で使用できません。ターミナルでプロジェクトの最上位フォルダへ移動し、次のコマンドを実行します。

flutter pub get

このコマンドは、pubspec.yamlを読み取り、必要なパッケージと、それらが内部で利用している関連パッケージを取得します。

取得された正確なバージョン情報は、pubspec.lockへ記録されます。このファイルによって、別の開発環境でも同じ構成を再現しやすくなります。通常は内容を直接編集せず、Flutterのコマンドに管理を任せます。

3.4 Dartファイルからパッケージを利用する

取得したパッケージは、使用するDartファイルでimportすると利用できます。3Dモデルを表示する画面では、次のように読み込みます。

import 'package:flutter_3d_controller/flutter_3d_controller.dart';

importは、そのファイル内で外部のクラスや関数を使用可能にする宣言です。パッケージをpubspec.yamlへ追加していても、必要なファイルでimportしていなければ利用できません。

httppath_providerも、実際に通信処理や保存処理を実装するファイルで読み込みます。使用していない段階でimportすると警告が表示されるため、必要になった時点で追加します。

3.5 パッケージ導入時のエラーを確認する

パッケージを追加したあとにエラーが出た場合は、まずpubspec.yamlのインデント、パッケージ名、バージョン番号を確認します。

代表的な原因には、次のようなものがあります。

  • dependenciesの位置が間違っている
  • 半角スペースではなくタブを使用している
  • パッケージ名を誤って入力している
  • Dart SDKとパッケージの対応条件が合っていない
  • flutter pub getを実行していない
  • エディターが古い解析結果を保持している

設定を修正したら、再度パッケージを取得します。

flutter pub get

それでもエラーが消えない場合は、アプリを停止して再起動します。必要に応じて、生成済みファイルを整理してから取得し直します。

flutter clean
flutter pub get

flutter cleanは生成済みのビルドデータを削除するコマンドです。ソースコードそのものは削除されませんが、通常は単純な入力ミスや設定ミスを先に確認してください。

3.6 この章の到達目標

この章の終了時点で、次の内容を確認します。

  • pubspec.yamlの役割を説明できる
  • YAMLではインデントが重要だと理解している
  • 3つのパッケージの用途を説明できる
  • flutter pub getを正常に実行できる
  • Dartファイルでパッケージをimportする意味を説明できる
  • パッケージ導入時の基本的なエラーを確認できる 次章では、main.dartを編集し、Flutterアプリが起動する仕組みを確認します。

https://app.notion.com/p/332b4ab5d136816b9244dfc5bd29a2f7?v=2c7b4ab5d136802d9a64000c46ee24e8&source=copy_link

FAQ

よくある質問

必要なパッケージを導入するは医療関係者向けだけの内容ですか。
医療分野の例が含まれる場合もありますが、医療関係者だけに限定した内容ではありません。生成AI、AI活用、DX、業務改善、プロトタイプ開発など、一般的なAI学習の事例として読める内容です。
AI初心者でも読めますか。
はい。AIをこれから学ぶ方、数学が苦手な方、仕事でAIを使いたい方にも読み進めやすいように、教材の章と節の流れに沿って整理しています。
サムネイル画像は必ず表示されますか。
はい。教材にcoverUrlが設定されている場合はその画像を表示し、未設定の場合は代替サムネイル画像を表示します。
Flutterアプリケーション開発概論のほかの章も読めますか。
はい。教材トップから章立てを確認でき、前後の節へもページ下部のナビゲーションから移動できます。