0

この質問の語彙が何であるかさえわかりませんが、Android と iOS に定数として含めることができる文字列のリストであるファイルが欲しいです。

この問題を説明するためのより良い語彙を見つけようとしているので、コメントも大歓迎です。

編集:たとえば、次のようなファイルが必要です

color_names.txt

COLOR_NAME_BLUE  "blue"
COLOR_NAME_RED   "red"
COLOR_NAME_GREEN "green"

コードでCOLOR_NAME_BLUEがシンボルチェックされるように、私が持っているAndroidとiOSプロジェクトの両方に含めることができ、誰かがCOLOR_NAME_BLEUと入力するとコンパイルエラーがスローされます。

実際のファイルははるかに大きくなり、維持できるようにしたいものです。これをJSONに入れることもできますが、実行時にチェックを行う必要があります。これはひどいことではありません。もっと良い方法があるかどうかを見つけようとしています。

4

1 に答える 1

1

また、文字列を共有する必要がある iOS および Android アプリもあります。

入力ファイルを取得して (エラーがないかチェックして)、iOS の場合は Localizable.strings ファイルを、Android の場合は strings.xml ファイルを出力する Python プログラム (または下位のスクリプト システム) を使用する必要があります。

ディレクトリ構造をよく理解していれば、ビルドに必要な場所に Localizable.strings ファイルと strings.xml ファイルの両方を配置できるはずです。

たとえば、次のようなラベル ペアの場合:

PRIMARY_AGE_10 "Primary Age 10"

ラベルと文字列の対応は、Android の strings.xml では明らかです。

<string name="PRIMARY_AGE_10">Primary Age 10</string>

iOS の Localizable.strings 形式は次のようになります。

"PRIMARY_AGE_10" = "Primary Age 10";

次に、NSString または @"Primary Age 10" を使用する代わりにラベル "Primary Age 10" を使用する場合は、次のように呼び出します。

NSLocalizedString(@"PRIMARY_AGE_10", nil) 

もう 1 つの大きな利点は、ローカライズが必要な場合に、複数の Localizable.strings ファイルと strings.xml ファイルを生成できることです。

于 2013-10-11T23:04:48.253 に答える