酢ろぐ!

カレーが嫌いなスマートフォンアプリプログラマのブログ。

iOS 12にアップデートしたところホームに表示されるアプリ名が正しく表示されなくなってしまった

Apple Watch Series 4が今日届いたので、ペアリングさせるためにiPhoneの方もiOS 12にアップデートすることにしました(諸事情によりXcodeは今もアップデートできていません)

デバイスをiOS 12にアップデートして、ホームに表示されるアプリ名が正しく表示されなくなってしまいました。

現象について

開発中のアプリ名がInfoPlist.stringsで指定している名前ではなくて{Product Name}の名前に変わってしまっていました。

仮にアプリ名が「私のアプリ」としてプロジェクト名が「MYAPPLICATION」とすると、ホームでアプリの下に表示される名前が「MYAPPLICATION」となってしまっている現象です。iOS 11では当然「私のアプリ」と表示されていました。(例えがわかりにくいかも)

私の端末だけの固有の問題かとも考えてましたが、別の方の端末でも同じ現象が発生しているところからして、iOS 12から発生するようになった現象のようです。

当該アプリについての情報

完全に日本国内向けでローカライズしていません。

Info.plistはProduct Name(デフォルト)のままで、InfoPlist.stringsの方に日本語のアプリ名を指定しています。iOS 11までは普通にアプリ名が表示されていましたが、iOS 12に上げたところProduct Nameが表示されるようになってしまいました。

解決

以下の方法で正しくアプリ名が表示されることを確認しました。

  1. プロジェクトのLocalizationsに Japanese を追加する

f:id:ch3cooh393:20180921164945p:plain

  1. InfoPlist.stringsにも Japanese を追加する

f:id:ch3cooh393:20180921164952p:plain

まとめ

以上のことから、iOS 12以降ではプロジェクトのLocalizationsに Base (English)以外の言語がない場合には、InfoPlist.stringsは使わずにInfo.plistのDisplay Nameを使うと推測できました。

追記:LocalizationsにJapaneseを追加しなくても、 InfoPlist.stringsにJapanese を追加するだけでアプリ名は表示されるようです!適宜読み飛ばしてください