Unity2019.3からのXcodeプロジェクトでSwiftが使えるのか検証
obj-cを書きたくない
シンプルにそれだけ
僕はSwiftが使いたい
そして来たるUnity2019.3…Unityのコア部分が.frameworkになるらしい
まぁそれだけなら気にしないしBuildのPostProcessを変えるくらいだろうと思ったら
下のコメントに
However for iOS, we won’t be supporting SWIFT for now, our focus in on Objective C.
Swiftのサポートは考えてない…?
え、まじで
まずは動かす環境を整える
2019.3.5f1を検証に選びリポジトリは以前
Unityのネイティブプラグイン(macOS/iOS/tvOS)のソースコードを共通化する - 勉強不足で至らんブログ
で使用した
GitHub - MizoTake/ApplePlatformNativePluginSample
を使うことに
検証のためにリポジトリにあるPostProcessは全部コメントアウトした
動かそう
UnityビルドしてXcodeでビルドするが案の定エラー
エラーが出てきて解決していくが
"Umbrella header not found"
というのだけ解決ができなくて悩んだ
ただネイティブの記事で
というのがありネイティブで可能ならUnityもできるはずと思い調べる
https://forum.unity.com/threads/build-ios-umbrella-error.838879/
Which states that it is a regression bug and is not happening in 2020.1 beta.
まじかよ
ということで2020.1をインストール
動くやんけ
しかもSwiftのバージョン勝手に設定してくれる様になってるやんけ
最高かよ
まとめ
2020ベータなら動いたので2019.3でSwiftのネイティブプラグインを使うのは避けた方が良さそう
これからもSwiftネイティブプラグインは使用可能!