なえ箱

メモを植えます

App Storeでリリースするアプリの「言語」を自動設定する方法【Unity】

この記事をシェアする

App Storeにアプリをリリースしたら言語が英語[EN]になってしまっている。。。

英語じゃないのに英語[EN]表記になってる

XCodeで修正する場合には、下のサイトを見ると全部解決する。

nobushiueshi.com

でも毎回アーカイブする時にplist設定するのはめちゃくちゃめんどくさい。

自分のアプリは基本日本語しか入れないのでOnPostprocessBuildで固定してしまいたい。

なので、OnPostprocessBuildで自動で設定するように対応したのでその処理のメモ。

とりあえずコードを見せろって人は一番下まで飛んでください。

plistでの表示を確認

XCodeでは以下2つを対応するはず。

  • Localizations を追加。Item 0に Japanese を割り当てる

  • Localization native development region に Japan を割り当てる

↑の設定状態をplist開いて確認した所、以下のようになっている

plist上ではこうなってる

あとはこれと同じになるようにDocumentを編集する。

OnPostprocessBuildに処理を追加する

var plist = new PlistDocument( );
var filePath = System.IO.Path.Combine( _buildPath, "Info.plist" );
plist.ReadFromFile( filePath );

// CFBundleDevelopmentRegionを日本語に設定
plist.root.SetString( "CFBundleDevelopmentRegion", "ja_JP" );

// CFBundleLocalizationsに日本を追加
PlistElementArray localizations = plist.root.CreateArray( "CFBundleLocalizations" );
localizations.AddString( "ja" );

これでplistに該当の内容が追加され、AppStoreで日本語表示になった。

2つとも追加されている