本文へスキップ

開発記

日本語しか入っていないアプリが、ストアで英語になっていた

日本語しか入っていない、日本語のためのアプリを公開したら、ストアの表示言語が英語になっていました。 説明文も日本語、対応言語の欄も日本語、それでも「英語」です。

ストアが見ているのは、説明文ではない

ストアの言語欄は、入力した説明文の中身から決まるわけではありません。アプリのバンドルが「自分の開発言語は何か」と申告している値を見ています。

そこが初期値のまま英語になっていました。中身が全部日本語でも、申告が英語なら英語です。

直したのは1箇所

開発言語まわりの設定を日本語にしました。

developmentRegion = ja
knownRegions      = ja
DEVELOPMENT_LANGUAGE = ja   ← 3つのバンドルの Info.plist が全部これを参照している

このアプリは本体のほかに拡張を2つ持っていますが、3つとも同じ変数を参照しているので、1箇所を直せば揃います。逆に言えば、揃っていないと3つがバラバラの申告をします。

言語ごとのリソースフォルダは作っていません。既定のリソースは開発言語のものとして扱われるので、開発言語を日本語にすれば、英語という候補がそもそも消えます。フォルダを増やすより、申告を正すほうが素直でした。

対応言語の一覧を持つ別の設定は残しました。そちらはストアの表示ではなく、OS が出す許可ダイアログの文言に効きます。消すと英語のダイアログが出ます。

副産物 —— キーボードが自分を英語だと言っていた

直したあとに気づきました。同じ変数を参照していたので、キーボード拡張が「これは英語のキーボードです」と申告していたのも一緒に直っていました。

日本語専用のキーボードが、自分を英語だと言っていたわけです。動作には影響しないので、こちらは指摘されるまで気づけない類でした。

確かめ方

設定を変えただけでは安心できないので、ビルドした成果物の中を開いて確認しました。3つのバンドルすべてで開発言語が日本語になっていること、キーボードの言語も日本語になっていること、版番号が想定どおりであること。

このときの「成果物の中を見る」という確認が、のちに提出前の検査を書くきっかけになりました。そちらは公開後に出た問題が、どれもコードのバグではなかったに書いています。

Resuru公開中Resuruマッチングアプリの返信文を、AIが3案とアドバイスで提案します。
Notes 一覧へ戻る