Exception: Calling TargetGuidByName with name=’Unity-iPhone’ is deprecated. というエラーの解決方法

UnityでiOSビルドした際に、以下のエラーが出ました。

Exception: Calling TargetGuidByName with name=’Unity-iPhone’ is deprecated. There are two targets now, call GetUnityMainTargetGuid() – for app or GetUnityFrameworkTargetGuid() – for source/plugins to get Guid instead.

ビルド自体は成功したのですが、ビルド毎にエラーが出るのは気持ち悪いので直しておきます。

原因と解決方法

UnityEditor.iOS.Xcode.PBXProjectクラスの

TargetGuidByName("Unity-iPhone")

というメソッドが非推奨になっています。
(引数には”Unity-iPhone”が入っていることが多いはず)

エラー文にもあるように、アプリ用の場合は

GetUnityMainTargetGuid()

プラグインの場合は

GetUnityFrameworkTargetGuid()

に書き換えてください。

引数は不要です。

エディタの全検索で「TargetGuidByName」を検索し、対象部分を見つけるのが早いと思います。

僕の場合は

GetUnityFrameworkTargetGuid()

に書き換えることでエラーは出なくなりました。

コメント