Unity iOS : アプリ名を日本語にする(Localization)

広告:超オススメUnity Asset
  広告:超オススメUnity Asset

Unityでアプリ名を日本語にする方法をささっとMEMOしときます。

【追記】いきなり最初のステップで書いた1.3.2を入れるとバグることがわかりました。

一見、うまく行ったかに思えるのですが(TestFlightも無事にリリースできるし)、メールで問題の箇所が指摘されます。

ITMS-90784: Missing bundle name – The CFBundleName and CFBundleDisplayName Info.plist keys are missing or have empty values in the bundle with the com.mushikago.Hoge bundle ID.

ITMS-90784: バンドル名の欠落 – CFBundleNameおよびCFBundleDisplayName Info.plistキーが欠落しているか、com.mushikago.HogeバンドルIDのバンドルに空の値があります。値の少なくとも1つを提供し、新しいビルドをアップロードしてください。アプリが複数のロケールをサポートしている場合は、アプリのローカリゼーションフォルダに加えて、Info.plistファイルにこれらのキーの少なくとも1つの値を提供していることを確認してください。

この問題は、

Hi, Recently I used Localization (1.2.1) package to support 4 languages (EN, FR, ES, and DE). To change the app display name, I configured some iOS metadata f...

で取り上げられていて、次のリリースで修正したとのことですが、検索で見つけると、Unity Editorのバージョンによっては 1.3.2 など古いものが入るためバグります。以下にインストール方法を書き直しておきます。(Unityの人も手動で入れるのがベストだと言ってます。)

残念ながら、パッケージマネージャーには最新バージョンは表示されませんが、そのバージョンのUnityがリリースされたときに伝えられたバージョンのみが表示されます。
新しいバージョンをリリースすると、変更を加えてパッチでリリースしない限り、表示されません。したがって、手動で更新することが最善のアプローチです。

  1. Window > Package Manager で Unity Registry を対象に「loc」と入れて検索。見つかった「Localization」(現在1.3.2)を Install
    +を押して、「add package from git URL …」で「com.unity.localization」と入れてインストール。

    Image21

    Image22

  2. Project Settings に Localization という項目が追加されるので選択肢し「Create」。保存先を聞かれるので「Assets」フォルダに「Localization」(任意の名前)という感じの名前のフォルダを作ってその中に保存。

    Image03

    Image04

  3. 「Locale Generator」をクリックし、「English」と「Japanese」にチェック。日本だけでリリースするとしても「English」もつけないと、後でXcodeでビルドするときにエラーになる。保存先を聞かれるので、先ほどのLocalizationフォルダを指定。

    Image05

    Image06

    Image07

  4. 「Specific Locale Selector」の「Locale Id」と「Project Locale Identifier」を「Japanese (ja)」に。

    Image08

    Image09

  5. Window > Asset Management > Localization Tables を開き、「New Table Collection」をクリック。String Table CollectionというTypeで、Nameに「TextTable」(例)という名前で「Create」。やはり、保存先を先ほど作った Localizationフォルダに指定。

    Image10

    Image11

    Image12

    Image13

  6. 「Add New Entry」で新しいKeyを追加。「AppName」(任意)というキーで英語と日本語の文字列を入力(適用ボタンなどはないので入力し終えたら設定される模様)。

    Image14

    Image15

  7. Project SettingsのLocalizationに戻って、Metadata部分の+ボタンから、iOS > App Info を追加。「Short Name」の値を選択するとパネルが出てくる。そのままでは選択項目がなく、「st:」となっているところにAppNameの検索文字列として「ap」のように入れると、初めて選択肢が出てくる。先ほど作成した AppName というキーをダブルクリックして適用。「Display Name」も同様に AppName を設定。

    Image16

    Image17

    Image18

    Image19

  8. ここまでで設定完了。あとはビルドしてXcodeプロジェクトを確認するとCFBundleNameとCFBundleDisplayNameがInfoPlist (Japanese) というところに書かれていて、ビルドすると無事にアプリ名が日本語になります。(Englishも設定しておかないとここでビルドエラーになるようです)

    Image20

    【追記】Info.plistを比較してみると、1.3.2では空なのに対し、1.4.5ではデフォルトの値が入っている

    Image23

以上iOSについてでしたが、Androidについてはまた後日。

スポンサーリンク