BigSurだと何か違うのか、他の参考文献の通りにやっても上手く行かなかった。
とにかく flutter doctor
というコマンドを実行して以下のように全てにチェックマークが入れば良い。
% flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 2.0.6, on macOS 11.2.2 20D80 darwin-x64, locale ja-JP)
[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
[✓] Xcode - develop for iOS and macOS
[✓] Chrome - develop for the web
[✓] Android Studio (version 4.2)
[✓] VS Code (version 1.54.3)
[✓] Connected device (1 available)
• No issues found!
1.Flutter入れる
自分の場合はHomeディレクトリにdevelopmentってフォルダを切って、そこにおきました。
あとbash使ってるのでその辺は適宜読み替えてください。
mkdir ~/development
cd ~/development
unzip ~/Downloads/flutter_macos_2.0.6-stable.zip
パスを通す
echo 'export PATH="$PATH:`pwd`/flutter/bin"' >> ~/.bash_profile
source ~/.bash_profile
2.Android Studio入れる
こだわりの設定とかがなければ全部Nextで最後にFinish
3.Android Studioのプラグインを導入する
・Flutter
Android Studioを起動したら、右下にConfigureってプルダウンがあるので、そこからPluginsを選択し、"Flutter"で検索してインストール。
(Dartも一緒に入ります)
・Android SDK Command-line tools
上記だけだとなぜかライセンス許可できなかった。
% flutter doctor --android-licenses
Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema
at com.android.repository.api.SchemaModule$SchemaModuleVersion.<init>(SchemaModule.java:156)
at com.android.repository.api.SchemaModule.<init>(SchemaModule.java:75)
at com.android.sdklib.repository.AndroidSdkHandler.<clinit>(AndroidSdkHandler.java:81)
at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:73)
at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:48)
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.annotation.XmlSchema
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:602)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
... 5 more
なのでCommand-line toolsを追加で入れる。
Configureの
Tools > SDK Manager
System Settings > Android SDK
から
SDK Tools タブを選択して
"Android SDK Command-line tools"
にチェックしてApply
・ライセンスを許可する
flutter doctor --android-licenses
4.Xcode入れる
アプリストアから普通にインストール
めちゃ時間かかる。
入れたら一回起動して、利用規約みたいなのにagreeする。
5.CocoaPodsをインストール
CocoaPodsとかいうプラグインがないとか言われる。
% flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 2.0.6, on macOS 11.2.2 20D80 darwin-x64, locale ja-JP)
[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
[✗] Xcode - develop for iOS and macOS
✗ Xcode installation is incomplete; a full installation is necessary for iOS development.
Download at: https://developer.apple.com/xcode/download/
Or install Xcode via the App Store.
Once installed, run:
sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer
sudo xcodebuild -runFirstLaunch
✗ CocoaPods not installed.
CocoaPods is used to retrieve the iOS and macOS platform side's plugin code that responds to your plugin usage on the Dart
side.
Without CocoaPods, plugins will not work on iOS or macOS.
For more info, see https://flutter.dev/platform-plugins
To install see https://guides.cocoapods.org/using/getting-started.html#installation for instructions.
[✓] Chrome - develop for the web
[✓] Android Studio (version 4.2)
[✓] VS Code (version 1.54.3)
[✓] Connected device (1 available)
! Doctor found issues in 1 category.
なので入れる
この手順は文献によってあったりなかったりする(?)
sudo gem install cocoapods
できた。
参考