久しぶりに Xcode で遭遇したエラーについてです。
Cordova で開発した iOS アプリを Xcode で開き、実行しようとしたところ、「Named colors do not work prior to iOS 11.0」というエラーが発生し、ビルドに失敗しました…。
検索でヒットした記事はこちら。
[iOS] Named colors do not work prior to iOS 11.0 – Qiita
https://qiita.com/netetahito/items/32437a9cf047a1ef4638
上記の参考サイトによると、何かの拍子に Storyboard
の BuildTarget
が低くなってしまったのが原因とのことでした。
そのため、この BuildTarget を適切なバージョンまで上げればビルドが通るようです。
おそらく、ネイティブアプリならこちらの対処法で問題ないと思います。
が、私の場合は、こちらを修正しても他のエラーが発生しました…。
で、調査を続けたところ、本当の原因は Cordova のバージョンを上げ過ぎていたことが問題でした。
確認したところ、Cordova 10.0.0
がインストールされていたので、こちらを 8.1.2
まで下げました。
ちょっと下げ過ぎかとも思いましたが、諸事情で Xcode の最新バージョンをインストールできないので、確実に動作することが確認できているバージョンまで下げました。
なお、バージョンダウンは下記のコマンドで行いました。
npm install -g cordova@8.1.2
上記のコマンドを実行し、Cordova のバージョンが下がっていることが確認できたら、下記のコマンドで一度 iOS プラットフォームを削除し、再度追加します。
cordova platforms rm ios cordova platforms add ios
その後、再び Xcode でアプリをビルドしたところ、問題なくビルドが通りました!
やはり、軽率にバージョンアップしてはダメですね…!
エラーが発生したのが、趣味で開発しているアプリだったので大したことはありませんでしたが、業務で開発しているアプリでもやらかしそうなミスだったので、今後は気をつけたいと思います。
以上、Cordova で開発した iOS アプリを Xcode で実行した際に「Named colors do not work prior to iOS 11.0」が発生した時の対処法でした。
ご参考になれば幸いです。