広告 Flutter Dart Unity アプリ開発

MacOS でiOSアプリ開発環境を整備する

はじめに

大抵、公式ページの指示通りに作業したら問題なく環境整備できるのですが、未だにiOS環境作成時に躓くので、備忘録として記事を作成しておきます。
要するに「sudo gem install cocoapod」がダメなのです。MacOSに標準搭載のRubyが古いのが原因と思われます。
HomeBrewをセットアップし「brew install cocoapod」とすればOK

まずはFlutter環境を構築(公式のままでOK)

まずは「git」をインストールします。ターミナルを開き、次のコマンドで整備するのがお勧め。

xcode-select --install

次にVSCode(Visual Studio Code)をインストールし、Flutter環境を構築します。
(Visual Studio Code.app をダウンロードしてから、 Applications フォルダに移動し、起動します。起動後にDockに残すとした方が使い勝手が良い)

VSCode for Mac

gitとVSCodeが無事にインストールできたら、VSCodeを起動して、まずは日本語プラグインを導入、次にFlutterプラグインを導入します。

vsc-inst2

Flutterプラグインを導入すると、同時にDartプラグインもインストールされます。

次に、VSCodeのコマンドパレット(Ctrl + Shift + P キー)で、flutterと入力し、「Flutter: New Project.」をクリックします。

VS Code で、コンピューター上の Flutter SDK の場所を指定するように求められます。[SDK のダウンロード] を選択します。 Flutter SDK のフォルダーを選択ダイアログが表示されたら、Flutter をインストールする場所を選択します。僕の場合は/home/ユーザ名/development/を指定します。すると/home/ユーザ名/development/flutterというフォルダが作成され、インストールされます。

「Flutter のクローンを作成」をクリックします。

「SDK を PATH に追加」をクリックします。

もしダイアログが閉じてクリックし損ねたら、VSCode左下にある、🔔マーク(通知)をクリックしてください。再びダイアログが表示されます。

全て作業が完了したら、一旦、VSCodeと、ターミナルを全て終了し、開きなおします。「flutter --version」と入力して、バージョンが表示されたらOK

ここからが本題!iOS環境の構築

Xcodeのインストール(これは問題ない)

下記URLから、download⇒xcodeを選択しダウンロード後、Xcode.appをApplicationsフォルダに移動させます。(xcode betaではない)

Xcode公式

xcodeのコマンドラインツールを以下のコマンドでインストールします。

sudo sh -c 'xcode-select -s /Applications/Xcode.app/Contents/Developer && xcodebuild -runFirstLaunch'

sudo xcodebuild -license

xcodebuild -downloadPlatform iOS

sudo softwareupdate --install-rosetta --agree-to-license

ここまでは公式のそのまんまです。

要注意!! CocoaPodのインストール

これが問題なのです。公式ではCocoaPodは、Rubyスクリプトのgemを用いて「sudo gem install cocoapods」を実行するように記載されていますが、MacOSのRubyが不完全であるため、必ず失敗します!!
(実はCocoaPodのInstallページの最初にも、そのような注意書きがあります)
必ず、次の手順で実行してください。

まずは、「HomeBrew」をインストールします。

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

次にHomeBrewでcocoapodをインストールします。これが確実です。

brew install cocoapods

すでにCocoaPodがインストールされている場合は、以下のコマンドでcocoapodを最新化しましょう。

pod repo update

iOSシミュレータを起動

open -a Simulator

これで環境整備は終了です。

AndroidのソースをiOSに移植する場合のコツ

基本的には、MacOSのflutterを使って、新規アプリと同じ名前のアプリを作成します。
flutter create --org com.xxxxx newappname

そして、Androidで動作確認したFlutterアプリの/lib, /android, /assets等のみ移植します。特にiosフォルダはコピーしないように注意。
flutter pub add はMacのflutterで実行して、pubspac.yamlもMacOS側で制御した方が安全です。(バージョン番号等は手打ちで移植)

Xcodeでも様々な設定が必要

下記ページ等を参考に、Apple Developerのアカウント作成、(年1万円の会費が発生)、Xcodeで様々な設定を行ってください。

Xcodeでの操作例(ちょっと古いけど)

このように大変面倒だけど、AndroidとiOSの両方で同じアプリが動くと感動します!!(そのためにFlutterやってるわけで)

是非ともチャレンジしてみてください。

XcodeでのArchiveが上手くいかない場合のコツ

ターミナルを起動し、flutter crean , flutter pub get, flutter pub run flutter_launcher_icons等を実行します。

次に、Flutterアプリのiosフォルダに移動し、Podfile.lockを削除して、pod install を実行します。
大抵これで大丈夫。

-Flutter Dart Unity アプリ開発