コンテンツに移動

よくアクセスするページ

最近アクセスしたページ

navigation

ICU4J Android Framework API

ICU4J は幅広く使用されているオープンソースの Java ライブラリのセットで、Unicode のほか、ソフトウェア アプリのグローバル化をサポートしています。また、Android 7.0(API レベル 24)から、アプリ デベロッパー用に android.icu パッケージ内で使う ICU4J API のサブセットが公開されています。これらの API は、端末上のローカライズ データを使用します。そのため、ICU4J ライブラリを APK にコンパイルせずにフレームワーク内にあるライブラリを呼び出せばよいので、APK のフットプリントを削減できます(この場合、Android 7.0(API レベル 24)より前のバージョンの Android を使用しているユーザーも、ICU4J ライブラリを含むバージョンのアプリをダウンロードできるようにするには、APK を複数のバージョン用意する必要があります)。

ここではまず、これらのライブラリをサポートするために必要な最低限の Android API レベルについて基本的な情報を説明します。次に、Android 固有の ICU4J の実装に必要な情報を説明します。最後に、Android フレームワークで ICU4J API を使用する方法について説明します。

ICU4J との関係

Android では、com.ibm.icu ではなく android.icu パッケージを介して ICU4J API のサブセットを公開しています。Android フレームワークでは、さまざまな理由により ICU4J API を公開しない可能性もあります。たとえば、Android がサポートを終了した API を公開しない、ICU チームからまだ安定版の発表がないなどの理由があります。ICU チームが今後 API のサポートを終了した場合、Android でもサポート終了という扱いになりますが、API は引き続き含まれます。

表 1. Android で使用される ICU および CLDR のバージョン

Android API レベル ICU バージョン CLDR バージョン
Android 7.0(API レベル 24) 56 28

いくつか注意事項があります。

com.ibm.icu から android.icu パッケージに移行する

アプリ内で既に ICU4J API を使用しており、android.icu API が要件を満たしている場合、フレームワーク API に移行するには、Java のインポートを com.ibm.icu から android.icu に変更します。次に、APK から ICU4J ファイルのコピーを削除します。

注: ICU4J フレームワーク API では、名前空間に com.ibm.icu ではなくandroid.icu を使用します。これは、独自の com.ibm.icu ライブラリを含む APK で名前空間が競合しないようにするためです。

その他の Android SDK API から android.icu API に移行する

java および android パッケージには、ICU4J にあるクラスと同等のクラスが一部含まれています。しかし多くの場合、ICU4J では、より幅広い標準と言語のサポートしています。

次に、すぐに利用できる例をいくつか示します。

クラス 代替クラス
java.lang.Character android.icu.lang.UCharacter
java.text.BreakIterator android.icu.text.BreakIterator
java.text.DecimalFormat android.icu.text.DecimalFormat
java.util.Calendar android.icu.util.Calendar
android.text.BidiFormatter android.icu.text.Bidi
android.text.format.DateFormat android.icu.text.DateFormat
android.text.format.DateUtils android.icu.text.DateFormat android.icu.text.RelativeDateTimeFormatter

ライセンス

ICU4J は ICU ライセンスでリリースされています。詳細については、ICU のユーザーガイド をご覧ください。

このサイトでは、ユーザーが選択したサイトの言語と表示設定を保存する目的で Cookie を使用しています。

Android デベロッパー向けの最新情報やヒントを入手して、Google Play での成功を手に入れましょう。

* 必須

送信しました

WeChat で Google Developers をフォローする

このサイトをで表示しますか?

ページの表示言語としてを選択しましたが、このサイトの言語はに設定されています。

言語設定を変更してこのサイトをで表示しますか?言語設定を変更する場合は、各ページの下にある言語メニューを使用してください。

このクラスには、API レベル 以上が必要です。

API レベル が選択されているため、このドキュメントは非表示になっています。左のナビゲーションの上にあるセレクタを使って、ドキュメントの API レベルを変更できます。

アプリに必要な API レベルを指定する方法について、詳しくは異なるプラットフォーム バージョンのサポートをご覧ください。

Take a short survey?
Help us improve the Android developer experience. (April 2018 — Developer Survey)