Build SettingのPlayer Settingsの中からも色々設定できるのですが、Localization native development regionの設定が見当たらず、毎回info.plistを更新するのも面倒なので、Unityからinfo.plistを書き換えてしまおうと思いました。
結論だけ先に書くと、Assets/Editorのなかに、
using UnityEngine; using UnityEditor; using UnityEditor.Callbacks; using UnityEditor.iOS.Xcode; using System.IO; public class XcodeProjectUpdater { [PostProcessBuild] static void OnPostprocessBuild(BuildTarget buildTarget, string path) { if (buildTarget != BuildTarget.iOS) return; string plistPath = Path.Combine(path, "Info.plist"); PlistDocument plist = new(); plist.ReadFromFile(plistPath); plist.root.SetString ("CFBundleDevelopmentRegion", "ja"); plist.WriteToFile(plistPath); } }
と書いたファイルを入れておけばOKでした。
はじめは、
using UnityEngine; using UnityEditor; using UnityEditor.Callbacks; using UnityEditor.iOS.Xcode; using System.IO; public class XcodeProjectUpdater { [PostProcessBuild] static void OnPostprocessBuild(BuildTarget buildTarget, string path) { if (buildTarget != BuildTarget.iOS) return; string plistPath = Path.Combine(path, "Info.plist"); PlistDocument plist = new PlistDocument(); plist.ReadFromFile(plistPath); plist.root.SetString ("Localization native development region", "Japan"); // ここが違う plist.WriteToFile(plistPath); } }
と書いていたのですが、うまく行かず、
plist.root.SetString ("Localization native development region", "Japan");
を、
plist.root.SetString ("CFBundleDevelopmentRegion", "ja");
としたらうまくいきました。