1

言語のリストが表示されている Android アプリを何度も見てきました。この言語のいずれかをタップして、この特定のアプリ用にダウンロードできます (GO Weather ウィジェットにはこの機能があります)。

これがどのように実装されているのか、Android アプリで言語を動的にロードする最良の方法は何ですか? アプリ プロジェクトに 100 個の string.xml リソースを追加することは解決策ではありません。さらに、何らかの「面白い休日言語」パックを提供したり、新しい言語を追加したりする場合は、プロジェクトを Google Play に何度もアップロードする必要があります...

ありがとう!

4

1 に答える 1

2

拡張ファイルを使用してアプリに追加することは可能ですが、いくつかの制限があります。主な問題は、限られた数の拡張ファイルしか持てないことです。100 の言語が必要な場合、唯一の選択肢は、それらすべてを拡張ファイルにロードし、すべてをダウンロードすることです。これは問題にはならないかもしれませんが、翻訳された文字列のリストはおそらくそれほど大きくないため、別のルートに進むことをお勧めします。

個別の言語アドオンをダウンロードするための最善の方法は、使用をstrings.xml完全にやめることです。シンプルな CSV ファイルを使用して文字列を保持し、名前を文字列にマッピングするだけです。プログラムが起動したら、それを文字列配列/マップ/その他に読み込むと、すべての文字列が準備完了になります。このように、言語を追加したい場合は、テキスト ファイルをダウンロードしてデータ ディレクトリに保存するのと同じくらい簡単です。

また、同じサーバー上で利用可能なすべての言語をリストしたファイルを保持できるため、前述のように、季節限定または期間限定の言語を追加する場合にアプリを更新する必要はありません. リストを取得するには、ファイルを読み込むだけです。

ファイルをホストする場所が必要になることに注意してください。

于 2013-03-01T18:52:12.367 に答える