Android ローカライズ
Androidローカライズのstrings.xmlチェック
Androidローカライズでは、言語別のstrings.xmlが基準ファイルと同じリソースを持ち、書式指定子、plurals、タグを維持しているか確認します。
対応形式:JSON、YAML、XLIFF、Android XML、Apple .strings/.xcstrings、Java .properties
例
strings.xmlの差分
<!-- Source --> <string name="welcome">Welcome, %1$s</string> <!-- Japanese --> <string name="welcome">ようこそ、%1$d</string>
検出したい問題
書式指定子: %1$s → %1$d 欠落リソース: menu_settings 余分な旧リソース: menu_legacy
name属性は翻訳しない
string要素のname属性はアプリが参照するリソースIDです。訳文だけが正しくても、nameが変わる、要素が消える、古い要素が残ると、画面で正しい文字列を取得できません。
原文側のres/values/strings.xmlと対象言語のvalues-ja/strings.xmlを比較し、リソース集合が意図どおり対応しているか確認します。
プレースホルダー・plurals・タグ
%s、%d、%1$sなどの書式指定子は型と位置を維持します。pluralsではone、otherなどのquantity単位も構造の一部です。b、i、xliff:gなどのインライン要素が翻訳工程で削除・追加されていないかも確認します。
- stringのname属性
- 書式指定子の型
- 位置指定子
- pluralsのquantity
- インラインタグ
- エスケープされた文字
ビルド前と実機で役割を分ける
ファイル比較は、欠落やトークン差分をビルド前に網羅的に見つけるために使います。Android Lintやビルド、実機テストでは、リソース解決、画面幅、複数形、文脈を確認します。
LocaleQAのレポートを翻訳会社や開発側と共有すると、修正対象をリソース名単位で揃えられます。