Annotation
androidx.annotation
グループ内のすべてのアーティファクトのリストを以下に示します。
アーティファクト | 安定版リリース | リリース候補版 | ベータ版リリース | アルファ版リリース |
---|---|---|---|---|
annotation | 1.8.2 | - | - | 1.9.0-alpha01 |
annotation-experimental | 1.4.1 | - | - | - |
依存関係の宣言
Annotation に依存関係を追加するには、Google の Maven リポジトリをプロジェクトに追加する必要があります。詳しくは、Google の Maven リポジトリをご覧ください。
アプリまたはモジュールの build.gradle
ファイルに、必要なアーティファクトの依存関係を追加します。
Groovy
dependencies { implementation "androidx.annotation:annotation:1.8.2" // To use the Java-compatible @androidx.annotation.OptIn API annotation implementation "androidx.annotation:annotation-experimental:1.4.1" }
Kotlin
dependencies { implementation("androidx.annotation:annotation:1.8.2") // To use the Java-compatible @androidx.annotation.OptIn API annotation implementation("androidx.annotation:annotation-experimental:1.4.1") }
依存関係について詳しくは、ビルド依存関係の追加をご覧ください。
フィードバック
お寄せいただいたフィードバックは Jetpack 改善の参考にさせていただきます。新しい問題が見つかった場合や、このライブラリを改善するアイデアをお持ちの場合は、お知らせください。新しい問題を報告していただく前に、このライブラリの既存の問題をご確認ください。スターボタンをクリックすると、既存の問題に投票できます。
詳細については、Issue Tracker のドキュメントをご覧ください。
バージョン 1.9
バージョン 1.9.0-alpha01
2024 年 6 月 26 日
androidx.annotation:annotation-*:1.9.0-alpha01
がリリースされました。バージョン 1.9.0-alpha01 に含まれる commit については、こちらをご覧ください。
外部からの協力
linuxArm64
マルチプラットフォーム ターゲットのサポートが追加されました(Jake Wharton 提供)
バージョン 1.8
バージョン 1.8.2
2024 年 8 月 7 日
androidx.annotation:annotation-*:1.8.2
がリリースされました。バージョン 1.8.2 に含まれる commit については、こちらをご覧ください。
バグの修正
mingwX64
プラットフォームのサポートを追加しました(I461ca、b/349894318)。
バージョン 1.8.1
2024 年 7 月 24 日
androidx.annotation:annotation-*:1.8.1
がリリースされました。バージョン 1.8.1 に含まれる commit については、こちらをご覧ください。
バグの修正
- 追加の Kotlin マルチプラットフォーム ターゲット(
watchos
、tvos
)が含まれています。
バージョン 1.8.0
2024 年 5 月 14 日
androidx.annotation:annotation-*:1.8.0
がリリースされました。バージョン 1.8.0 に含まれる commit については、こちらをご覧ください。
1.7.0 以降の重要な変更
- 非推奨の API の代替を明示する
@ReplaceWith
アノテーションを追加しました @MainThread
アノテーションは共通ソースセットに移動されました。
バージョン 1.8.0-rc01
2024 年 5 月 1 日
androidx.annotation:annotation-*:1.8.0-rc01
がリリースされました。バージョン 1.8.0-rc01 には、前回のベータ版リリースから変更されていません。
バージョン 1.8.0-beta02
2024 年 4 月 17 日
androidx.annotation:annotation-*:1.8.0-beta02
がリリースされました。バージョン 1.8.0-beta02 には前回のリリースからの変更はありません。
バージョン 1.8.0-beta01
2024 年 4 月 3 日
androidx.annotation:annotation-*:1.8.0-beta01
がリリースされました。バージョン 1.8.0-beta01 に含まれる commit については、こちらをご覧ください。
新機能
ReplaceWith
アノテーションは API で安定版になりましたが、自動修正に関連する lint チェックはまだリリースされていません
バージョン 1.8.0-alpha02
2024 年 3 月 20 日
androidx.annotation:annotation-*:1.8.0-alpha02
がリリースされました。重要な変更はありません。バージョン 1.8.0-alpha02 に含まれる commit については、こちらをご覧ください。
バージョン 1.8.0-alpha01
2024 年 2 月 21 日
androidx.annotation:annotation-*:1.8.0-alpha01
がリリースされました。バージョン 1.8.0-alpha01 に含まれる commit については、こちらをご覧ください。
API の変更
- 非推奨の API の代替を明示する
@ReplaceWith
アノテーションを追加しました。(I38db3、b/322373864)。
外部からの協力
@MainThread
アノテーションを共通ソースセットに移行してくれた Ivan Matkov 氏に感謝します。(6f228c)。
バージョン 1.7
バージョン 1.7.1
2023 年 12 月 13 日
androidx.annotation:annotation-*:1.7.1
がリリースされました。バージョン 1.7.1 に含まれる commit については、こちらをご覧ください。
バグの修正
- デフォルトのプラットフォーム依存関係を挿入する場合は、
compile
スコープを使用します。(I4958f)。
バージョン 1.7.0
2023 年 9 月 6 日
androidx.annotation:annotation-*:1.7.0
がリリースされました。バージョン 1.7.0 に含まれる commit については、こちらをご覧ください。
1.6.0 以降の重要な変更
- iOS、Linux、macOS プラットフォームをターゲットとする Kotlin マルチプラットフォーム アーティファクトが含まれています。
- KMM プロジェクトでアノテーションを使用できるようになりました。アノテーションの Android 以外のターゲットはまだ試験運用版ですが、デベロッパーが簡単に試せるようにバージョンを統合することにしました。具体的には、アルファ版の開発中に境界が最終決定される際に、一部のアノテーションが共通コードとプラットフォーム固有のコード間を移動する可能性があります。
バージョン 1.7.0-rc01
2023 年 8 月 23 日
androidx.annotation:annotation-*:1.7.0-rc01
がリリースされました。バージョン 1.7.0-rc01 に含まれる commit については、こちらをご覧ください。
このリリースには、以前のベータ版からの変更は含まれていません。
バージョン 1.7.0-beta01
2023 年 8 月 9 日
androidx.annotation:annotation-*:1.7.0-beta01
がリリースされました。バージョン 1.7.0-beta01 に含まれる commit については、こちらをご覧ください。
新機能
- リリース用の安定化された API
バージョン 1.7.0-alpha03
2023 年 7 月 26 日
androidx.annotation:annotation-*:1.7.0-alpha03
がリリースされました。バージョン 1.7.0-alpha03 に含まれる commit については、こちらをご覧ください。
バグの修正
- Maven POM のパブリケーションに、デフォルトの JVM ターゲット マルチプラットフォーム アーティファクトが依存関係として含まれるようになりました
バージョン 1.7.0-alpha02
2023 年 3 月 24 日
androidx.annotation:annotation-*:1.7.0-alpha02
がリリースされました。
バグの修正
- Kotlin ネイティブ ターゲットのビルドの問題を回避するために、Maven アーティファクトから依存関係の制約を削除しました(b/274786186、KT-57531)。
バージョン 1.7.0-alpha01
2023 年 3 月 22 日
androidx.annotation:annotation-*:1.7.0-alpha01
がリリースされました。バージョン 1.7.0-alpha01 に含まれる commit については、こちらをご覧ください。
新機能
- iOS、Linux、MacOS プラットフォームをターゲットとする Kotlin マルチプラットフォーム アーティファクトが含まれています。
- KMM プロジェクトでアノテーションを使用できるようになりました。アノテーションの Android 以外のターゲットはまだ試験運用版ですが、デベロッパーが簡単に試せるようにバージョンを統合することにしました。具体的には、アルファ版の開発中に境界が最終決定される際に、一部のアノテーションが共通コードとプラットフォーム固有のコード間を移動する可能性があります。
バージョン 1.6
バージョン 1.6.0
2023 年 2 月 22 日
androidx.annotation:annotation:1.6.0
と androidx.annotation:annotation-jvm:1.6.0
がリリースされました。バージョン 1.6.0 に含まれる commit については、こちらをご覧ください。
1.5.0 以降の重要な変更
- API に特定の拡張 SDK の特定のバージョンが必要であることを示す
@RequiresExtension
アノテーションを追加しました。(I5e4fe) - Kotlin マルチプラットフォーム ツールチェーンを使用してビルドするようアノテーション ライブラリを変換しました。(I3be8d)
バージョン 1.6.0-rc01
2023 年 2 月 8 日
androidx.annotation:annotation:1.6.0-rc01
と androidx.annotation:annotation-jvm:1.6.0-rc01
がリリースされました。バージョン 1.6.0-rc01 に含まれる commit については、こちらをご覧ください。
- アノテーションはリリース候補版 1.6.0-rc01 用に安定化されています。
バージョン 1.6.0-beta01
2023 年 1 月 25 日
androidx.annotation:annotation:1.6.0-beta01
、androidx.annotation:annotation-jvm:1.6.0-beta01
がリリースされました。1.6.0-alpha01
からの変更はありません。
バージョン 1.6.0-alpha01
2023 年 1 月 11 日
androidx.annotation:annotation-*:1.6.0-alpha01
がリリースされました。バージョン 1.6.0-alpha01 に含まれる commit については、こちらをご覧ください。
バージョン 1.6.0-dev01
2023 年 2 月 8 日
androidx.annotation:annotation-*:1.6.0-dev01
がリリースされました。バージョン 1.6.0-dev01 に含まれる commit については、こちらをご覧ください。
- デベロッパー プレビュー 1.6.0-dev01 で、アノテーションの Kotlin マルチプラットフォームが有効になりました。
新機能
- API に特定の拡張 SDK の特定のバージョンが必要であることを示す
@RequiresExtension
アノテーションを追加しました。(I5e4fe) - Kotlin マルチプラットフォーム ツールチェーンを使用してビルドするようアノテーション ライブラリを変換しました。(I3be8d)
バージョン 1.5.0
バージョン 1.5.0
2022 年 9 月 21 日
androidx.annotation:annotation:1.5.0
がリリースされました。バージョン 1.5.0 に含まれる commit については、こちらをご覧ください。
1.4.0 以降の重要な変更
- Annotation ライブラリは Kotlin ソースに完全に移行されました。これにより、Kotlin 固有のターゲット使用サイトおよびその他の Kotlin と互換性があるアノテーション機能がサポートされます。
バージョン 1.5.0-rc01
2022 年 9 月 7 日
androidx.annotation:annotation:1.5.0-rc01
がリリースされました。バージョン 1.5.0-rc01 に含まれる commit については、こちらをご覧ください。
- 以前の 1.5.0 ベータ版リリースからの変更はありません。
バージョン 1.5.0-beta01
2022 年 8 月 24 日
androidx.annotation:annotation:1.5.0-beta01
がリリースされました。バージョン 1.5.0-beta01 に含まれる commit については、こちらをご覧ください。
- 以前のリリースからの変更はありません。ベータ版の API サーフェスは凍結されました。
バージョン 1.5.0-alpha02
2022 年 8 月 10 日
androidx.annotation:annotation:1.5.0-alpha02
がリリースされました。バージョン 1.5.0-alpha02 に含まれる commit については、こちらをご覧ください。
- 以前のアルファ版リリースからの変更はありません。
バージョン 1.5.0-alpha01
2022 年 7 月 27 日
androidx.annotation:annotation:1.5.0-alpha01
がリリースされました。バージョン 1.5.0-alpha01 に含まれる commit については、こちらをご覧ください。
新機能
- Annotation ライブラリは Kotlin ソースに完全に移行されました。これにより、Kotlin 固有のターゲット使用サイトおよびその他の Kotlin と互換性があるアノテーション機能がサポートされます。
バージョン 1.4.0
バージョン 1.4.0
2022 年 6 月 15 日
androidx.annotation:annotation:1.4.0
がリリースされました。バージョン 1.4.0 に含まれる commit については、こちらをご覧ください。
1.3.0 以降の重要な変更
@RestrictTo
は Kotlin ソースに移行され、@file
の使用サイトをサポートするようになりました。このため、アノテーション ライブラリは Kotlin 標準ライブラリに依存するようになりました。@ReturnThis
(b/140249763): このメソッドをオーバーライドするメソッドが必ず同じインスタンスを返すようになります(ビルダーなどが対象)。@OpenForTesting
(b/141539024): 「open」とマークされた Kotlin のクラスとメソッドにこのアノテーションを付けることができます。lint は、このクラスが単体テストからのみサブクラス化されている(そしてメソッドのみがオーバーライドされている)ことを確認します。@DeprecatedSinceApi
(b/37116481): アノテーションを付けたメソッド(またはクラス、フィールド)はプラットフォーム API のバックポート ライブラリの一部であり、記載した API レベルの時点で不要になったことを示します。@EmptySuper
: このメソッドが空であると定義されているため、オーバーライドするときに呼び出す必要がない(実際に呼び出すべきではなく、下位互換性チェックなどが含まれる可能性がある)ことを示します。
バージョン 1.4.0-rc01
2022 年 6 月 1 日
androidx.annotation:annotation:1.4.0-rc01
がリリースされました。バージョン 1.4.0-rc01 に含まれる commit については、こちらをご覧ください。
- リリースの API サーフェスと機能が確定しました。
バージョン 1.4.0-beta01
2022 年 5 月 18 日
androidx.annotation:annotation:1.4.0-beta01
がリリースされました。バージョン 1.4.0-beta01 に含まれる commit については、こちらをご覧ください。
- 最後のアルファ版からの変更はありません。ベータ版リリースの API サーフェスはロックダウンされました。
バージョン 1.4.0-alpha02
2022 年 2 月 9 日
androidx.annotation:annotation:1.4.0-alpha02
がリリースされました。バージョン 1.4.0-alpha02 に含まれる commit については、こちらをご覧ください。
新機能
@ReturnThis
、@OpenForTesting
、@EmptySuper
、@DeprecatedSinceApi
アノテーションを追加しました。(21946a2)@ReturnThis
(b/140249763): このメソッドをオーバーライドするメソッドが必ず同じインスタンスを返すようになります(ビルダーなどが対象)。@OpenForTesting
(b/141539024): 「open」とマークされた Kotlin のクラスとメソッドにこのアノテーションを付けることができます。lint は、このクラスが単体テストからのみサブクラス化されている(そしてメソッドのみがオーバーライドされている)ことを確認します。@DeprecatedSinceApi
(b/37116481): アノテーションを付けたメソッド(またはクラス、フィールド)はプラットフォーム API のバックポート ライブラリの一部であり、記載した API レベルの時点で不要になったことを示します。@EmptySuper
: このメソッドが空であると定義されているため、オーバーライドするときに呼び出す必要がない(実際に呼び出すべきではなく、下位互換性チェックなどが含まれる可能性がある)ことを示します。
バージョン 1.4.0-alpha01
2021 年 12 月 15 日
androidx.annotation:annotation:1.4.0-alpha01
がリリースされました。バージョン 1.4.0-alpha01 に含まれる commit については、こちらをご覧ください。
API の変更
RestrictTo
アノテーションを Kotlin ソースに移行しました。(Ia6336)
バージョン 1.3.0
バージョン 1.3.0
2021 年 11 月 3 日
androidx.annotation:annotation:1.3.0
がリリースされました。バージョン 1.3.0 に含まれる commit については、こちらをご覧ください。
1.2.0 以降の重要な変更
- サポートを終了できないものの、パフォーマンスに大きな悪影響を与えるため通常の本番環境コードでは呼び出すべきではない API にマークを付けるための
@Discouraged
アノテーション - デベロッパーが新しい API を簡単に移行できるように汎用の Context にマークを付けるための
@Context
アノテーション - 重力値が整数にパックされた要素にマークを付けるための
@GravityInt
アノテーション androidx.resourceinspection
で@InspectableProperty
のサポートが終了し、@Attribute
に置き換えられました
バージョン 1.3.0-rc01
2021 年 10 月 27 日
androidx.annotation:annotation:1.3.0-rc01
がリリースされました。バージョン 1.3.0-rc01 に含まれる commit については、こちらをご覧ください。
バージョン 1.3.0-beta01
2021 年 9 月 29 日
androidx.annotation:annotation:1.3.0-beta01
がリリースされました。バージョン 1.3.0-beta01 に含まれる commit については、こちらをご覧ください。
API の変更
- @Discouraged に「message」での説明が必要になりました。(I3390f)
- 推奨されない要素にマークを付けるための @Discouraged アノテーションを追加しました。(Ib2549)
- Studio のドキュメントのポップアップから RestrictTo アノテーションを確認できるようにしました。(Ie8e1a、b/183134648)
バグの修正
- Context アノテーションを追加して汎用の Context をマークし、デベロッパーが新しい API に簡単に移行できるようにしました。(Ie581a)
バージョン 1.3.0-alpha01
2021 年 3 月 24 日
androidx.annotation:annotation:1.3.0-alpha01
がリリースされました。バージョン 1.3.0-alpha01 に含まれる commit については、こちらをご覧ください。
API の変更
androidx.resourceinspection
の@InspectableProperty
を非推奨とし、@Attribute
に置き換えました。(Ic0eff)- 重力値が整数にパックされた要素にマークを付けるための
@GravityInt
アノテーションを追加しました。(Ifcaa4、b/180620048)
Annotation-Experimental バージョン 1.4
バージョン 1.4.1
2024 年 4 月 3 日
androidx.annotation:annotation-experimental:1.4.1
がリリースされました。バージョン 1.4.1 に含まれる commit については、こちらをご覧ください。
バグの修正
- Kotlin ファイルで誤って
RequiresOptIn
チェックをトリガーしないように、isKotlin
の使用を修正。(I2d8c1f)。
バージョン 1.4.0
2024 年 1 月 24 日
androidx.annotation:annotation-experimental:1.4.0
がリリースされました。バージョン 1.4.0 に含まれる commit については、こちらをご覧ください。
1.3.0 以降の重要な変更
- Kotlin マルチプラットフォームのサポートを追加する
- Kotlin 2.0 との互換性を修正する
- 試験運用版のアノテーションが付けられた Kotlin プロパティの Java 使用に関する警告を表示(I8bd43)
- Kotlin メソッドでの自動修正アノテーションの配置を修正しました(Id7a41)。
バージョン 1.4.0-rc01
2024 年 1 月 10 日
androidx.annotation:annotation-experimental:1.4.0-rc01
がリリースされました。バージョン 1.4.0-rc01 には、前回のリリースからの変更は含まれていません。
バージョン 1.4.0-beta01
2023 年 12 月 13 日
androidx.annotation:annotation-experimental:1.4.0-beta01
がリリースされました。前回のリリースからの変更はありません。
バージョン 1.4.0-alpha01
2023 年 11 月 29 日
androidx.annotation:annotation-experimental:1.4.0-alpha01
がリリースされました。バージョン 1.4.0-alpha01 に含まれる commit については、こちらをご覧ください。
バグの修正
- b/301598518 を回避するために、クラスレベルの自動修正候補を一時的に削除しました。(Id98b2)。
- 試験運用版のアノテーションが付けられた Kotlin プロパティの Java 使用に関する警告を表示(I8bd43)
- Kotlin メソッドでの自動修正アノテーションの配置を修正しました(Id7a41)。
バージョン 1.4.0-dev01
2023 年 2 月 8 日
androidx.annotation:annotation-experimental:1.4.0-dev01
がリリースされました。バージョン 1.4.0-dev01 に含まれる commit については、こちらをご覧ください。
- デベロッパー プレビュー 1.4.0-dev01 で、Annotation-experimental の Kotlin マルチプラットフォームが有効になりました。
Annotation-Experimental バージョン 1.3.1
バージョン 1.3.1
2023 年 6 月 21 日
androidx.annotation:annotation-experimental:1.3.1
がリリースされました。バージョン 1.3.1 に含まれる commit については、こちらをご覧ください。
バグの修正
- lint 自動修正を適用するときに、修飾子リストの先頭にアノテーションを配置します。(b/251172715)。
- lint チェックを使用して、Kotlin ソースで
androidx.annotation.RequiresOptIn
が使用されないようにする(b/241097743)
Annotation-Experimental バージョン 1.3.0
バージョン 1.3.0
2022 年 9 月 7 日
androidx.annotation:annotation-experimental:1.3.0
がリリースされました。バージョン 1.3.0 に含まれる commit については、こちらをご覧ください。
1.2.0 以降の重要な変更
- パッケージ レベルでの
@androidx.annotation.OptIn
の使用のサポートを追加しました。(I24d58) - Kotlin stdlib の依存関係をコンパイル専用ではなく API タイプに移動しました。つまり、Annotation-Experimental ライブラリのすべてのクライアントでは、推移的な依存関係に Kotlin 標準ライブラリが含まれます。
バージョン 1.3.0-rc01
2022 年 8 月 24 日
androidx.annotation:annotation-experimental:1.3.0-rc01
がリリースされました。バージョン 1.3.0-rc01 に含まれる commit については、こちらをご覧ください。
- 以前のリリースからの変更はありません。RC の実装は凍結されました。
バージョン 1.3.0-beta01
2022 年 8 月 10 日
androidx.annotation:annotation-experimental:1.3.0-beta01
がリリースされました。バージョン 1.3.0-beta01 に含まれる commit については、こちらをご覧ください。
- アルファ版からの変更はありません。このライブラリはベータ版リリース用に安定化されています。
バージョン 1.3.0-alpha01
2022 年 7 月 27 日
androidx.annotation:annotation-experimental:1.3.0-alpha01
がリリースされました。バージョン 1.3.0-alpha01 に含まれる commit については、こちらをご覧ください。
API の変更
- パッケージ レベルでの
@androidx.annotation.OptIn
の使用のサポートを追加しました。(I24d58)
Annotation-Experimental バージョン 1.2.0
バージョン 1.2.0
2021 年 12 月 15 日
androidx.annotation:annotation-experimental:1.2.0
がリリースされました。バージョン 1.2.0 に含まれる commit については、こちらをご覧ください。
1.1.0 以降の重要な変更
このライブラリは Java 8 言語レベルをターゲットとするようになりました。
バージョン 1.2.0-rc01
2021 年 12 月 1 日
androidx.annotation:annotation-experimental:1.2.0-rc01
がリリースされました。バージョン 1.2.0-rc01 に含まれる commit については、こちらをご覧ください。
ベータ版からの変更はありません。
バージョン 1.2.0-beta01
2021 年 11 月 17 日
androidx.annotation:annotation-experimental:1.2.0-beta01
がリリースされました。バージョン 1.2.0-beta01 に含まれる commit については、こちらをご覧ください。
API の変更
ベータ版の API が確定しました。
Annotation-Experimental バージョン 1.2.0-alpha01
2021 年 6 月 30 日
androidx.annotation:annotation-experimental:1.2.0-alpha01
がリリースされました。バージョン 1.2.0-alpha01 に含まれる commit については、こちらをご覧ください。
新機能
- ライブラリは Java 8 言語レベルをターゲットとしています
バージョン 1.2.0
バージョン 1.2.0
2021 年 3 月 24 日
androidx.annotation:annotation:1.2.0
がリリースされました。バージョン 1.2.0 に含まれる commit については、こちらをご覧ください。
1.1.0 以降の主な変更
@ChecksSdkIntAtLeast
アノテーションを追加しました。SDK レベルでのアクセスのゲートやNewApi
lint チェック対応が目的のメソッドまたはフィールドを識別するために使用できます。@DoNotInline
アノテーションが追加されました。Proguard ルールと組み合わせて使用し、最適化時にメンバーがインライン化されるのを防ぎます。- アノテーション付きメンバーのドキュメントに確実に表示されるように、さまざまなアノテーションに
@Documented
が付くようになりました。
バージョン 1.2.0-rc01
2021 年 2 月 24 日
androidx.annotation:annotation:1.2.0-rc01
がリリースされました。バージョン 1.2.0-rc01 に含まれる commit については、こちらをご覧ください。
バージョン 1.2.0-beta01
2021 年 1 月 13 日
androidx.annotation:annotation:1.2.0-beta01
がリリースされました。バージョン 1.2.0-beta01 に含まれる commit については、こちらをご覧ください。
API の変更
- 新しい
@DoNotInline
アノテーション。コード オプティマイザー(Proguard、R8 など)に、アノテーションを付けたメソッドをインライン化しないように指示します。(I3dfe8、b/141326133)
バージョン 1.2.0-alpha01
2020 年 5 月 14 日
androidx.annotation:annotation:1.2.0-alpha01
がリリースされました。バージョン 1.2.0-alpha01 に含まれる commit については、こちらをご覧ください。
新機能
@ChecksSdkIntAtLeast
アノテーションを追加しました。これにより、AndroidX とユーザーは、SDK_INT
チェックを表すメソッドとフィールドにアノテーションを付けることができます。(I89a54、b/120255046)
Annotation-Experimental バージョン 1.1.0
バージョン 1.1.0
2021 年 4 月 7 日
androidx.annotation:annotation-experimental:1.1.0
がリリースされました。バージョン 1.1.0 に含まれる commit については、こちらをご覧ください。
1.0.0 以降の主な変更
- Jetpack の試験運用版のアノテーションは、Kotlin で書き換えられ、複数のマーカークラスのサポートを提供するようになり、非推奨の処理が改善されました。
- Kotlin と同等の機能の
RequiresOptIn
とOptIn
のアノテーションが追加され、Experimental
とUsesExperimental
のアノテーションが非推奨になりました。
バージョン 1.1.0-rc02
2021 年 3 月 24 日
androidx.annotation:annotation-experimental:1.1.0-rc02
がリリースされました。バージョン 1.1.0-rc02 に含まれる commit については、こちらをご覧ください。
バグの修正
- Kotlin のメタ アノテーションがない場合にコードの最適化で警告しないように、Proguard ルールを追加しました。
バージョン 1.1.0-rc01
2021 年 3 月 10 日
androidx.annotation:annotation-experimental:1.1.0-rc01
がリリースされました。バージョン 1.1.0-rc01 に含まれる commit については、こちらをご覧ください。
以前のベータ版リリースからの変更はありません。
バージョン 1.1.0-beta01
2021 年 1 月 27 日
androidx.annotation:annotation-experimental:1.1.0-beta01
がリリースされました。バージョン 1.1.0-beta01 に含まれる commit については、こちらをご覧ください。
API の変更
- Kotlin と同等の機能を提供するために、試験運用版アノテーションの androidx バリアントは非推奨となりました。これは RequiresOptIn アノテーションの androidx バリアントに置き換えられ、Java 向けのリンターは新しい Kotlin アノテーションと新しい androidx バリアントの両方をサポートするように更新されました。(I52495、b/151331381)
バージョン 1.1.0-alpha01
2020 年 7 月 22 日
androidx.annotation:annotation-experimental:1.1.0-alpha01
がリリースされました。バージョン 1.1.0-alpha01 に含まれる commit については、こちらをご覧ください。
新機能
- Experimental アノテーション ライブラリが Kotlin で記述されるようになりました。ただし、Kotlin 標準ライブラリを依存関係として含める必要はありません。このアノテーション ライブラリには、Java プログラミング言語のみを使用するプロジェクトから不必要な Kotlin メタデータを削除するための Proguard ファイルが含まれています。
@UseExperimental
が複数のマーカークラスをサポートするようになりました。(aosp/1185577、b/145137892)
Annotation-Experimental バージョン 1.0.0
Annotation-Experimental バージョン 1.0.0
2019 年 11 月 7 日
androidx.annotation:annotation-experimental:1.0.0
と androidx.annotation:annotation-experimental-lint:1.0.0
がリリースされました。1.0.0-rc01
からの変更はありません。バージョン 1.0.0 に含まれる commit については、こちらをご覧ください。
1.0.0 の主な機能
- Java ソースコード内の Kotlin
@Experimental
セマンティクスに対する lint ベースの適用 - Kotlin への依存関係を必要とせずに、Kotlin の
@Experimental
および@UseExperimental
アノテーションと同等の動作を提供する Java アノテーション
Annotation-Experimental バージョン 1.0.0-rc01
2019 年 10 月 23 日
androidx.annotation:annotation-experimental:1.0.0-rc01
と androidx.annotation:annotation-experimental-lint:1.0.0-rc01
がリリースされました。バージョン 1.0.0-rc01 に含まれる commit については、こちらをご覧ください。
既知の問題
Studio 3.5 安定版で、Kotlin @Experimental
アノテーションを無効な Java で使用している場合、@Experimental
の使用に対する lint 検出ツールからの警告が IDE に表示されません。b/140640322 をご覧ください。
Annotation-Experimental バージョン 1.0.0-beta01
2019 年 10 月 9 日
androidx.annotation:annotation-experimental:1.0.0-beta01
と androidx.annotation:annotation-experimental-lint:1.0.0-beta01
がリリースされました。バージョン 1.0.0-alpha01
からの変更はありません。バージョン 1.0.0-beta01 に含まれる commit については、こちらをご覧ください。
Annotation-Experimental バージョン 1.0.0-alpha01
2019 年 9 月 18 日
androidx.annotation:annotation-experimental:1.0.0-alpha01
と androidx.annotation:annotation-experimental-lint:1.0.0-alpha01
がリリースされました。annotation-experimental に含まれる commit1.0.0-alpha01
と、annotation-experimental-lint に含まれる commit1.0.0-alpha01
があります。
新機能
Jetpack Experimental アノテーション ライブラリには、Kotlin の試験運用版 API マーカーの Java に対応した実装が用意されています。
-lint
アーティファクトは、試験運用の使用制限を lint ベースで実装しており、Kotlin による試験運用のネイティブ API マーカーを Java に対して使用する際の制限を実施します。annotation-experimental
アーティファクトを依存関係として使用する場合、annotation-experimental-lint
アーティファクトによる lint ルールが自動的に適用されます。
バージョン 1.1.0
バージョン 1.1.0
2019 年 6 月 5 日
androidx.annotation:annotation:1.1.0
がリリースされました。1.1.0-rc01 からの変更はありません。
バージョン 1.1.0-rc01
2019 年 5 月 7 日
androidx.annotation:annotation:1.1.0-rc01
がリリースされました。1.1.0-beta01
からの変更はありません。このバージョンに含まれる commit については、こちらをご覧ください。
バージョン 1.1.0-beta01
2019 年 4 月 3 日
androidx.annotation:annotation:1.1.0-beta01
がリリースされました。このバージョンに含まれる commit については、こちらをご覧ください。
新機能
- 新しいビュー検査 API をサポートする新しい
@InspectableProperty
アノテーションが Android 10 に追加されました。このアノテーションは、ビューまたは他の UI 要素のゲッターに適用できます。コード生成ツールでこれを使用して、リフレクションのオーバーヘッドなしにプロパティ名と属性 ID をプロパティ値にマッピングするコンパニオン オブジェクトを作成できます。
API の変更
- 互換性を破る変更:
@ContentView
がコンストラクタ アノテーションに変更され、@LayoutRes
値は削除されました。@ContentView
アノテーションをサポートするクラスでは、@LayoutRes int
パラメータを取るコンストラクタにこのアノテーションを追加する必要があります。これにより、ライブラリ モジュールでこのアノテーションを使用する際の問題が修正されます。(b/128352521)
バージョン 1.1.0-alpha02
2019 年 3 月 13 日
androidx.annotation:annotation:1.1.0-alpha02
がリリースされました。このバージョンに含まれる commit の完全なリストについては、こちらをご覧ください。
新機能
- 新しい API 制限スコープ:
RestrictTo.Scope.LIBRARY_GROUP_PREFIX
。最後の.
(ピリオド)までが同じライブラリ グループ プレフィックスを共有するグループのパッケージ内のコードに使用が制限されます。たとえば、ライブラリfoo.bar:lib1
とfoo.baz:lib2
はプレフィックスfoo
を共有しているため、このスコープに制限された互いの API を使用できます。同様に、com.foo.bar:lib1
とcom.foo.baz:lib2
はcom.foo.
プレフィックスを共有しているため、このスコープに制限された API を共有できます。しかし、ライブラリcom.bar.qux:lib3
はプレフィックスcom.
のみを共有し、最後の.
(ピリオド)までのすべてを共有しているわけではないため、制限された API を使用できません。
バージョン 1.1.0-alpha01
2019 年 1 月 30 日
androidx.annotation:annotation 1.1.0-alpha01
がリリースされました。
新機能
- どのレイアウト XML ファイルを拡張するかを指定できる
@ContentView
アノテーションが追加されました。ComponentActivity
の1.0.0-alpha04
リリースとFragment
の1.1.0-alpha04
リリースで、それぞれsetContentView()
の使用またはonCreateView()
のオーバーライドの代替としてサポートされます。(aosp/837619)
バージョン 1.0.2
バージョン 1.0.2
2019 年 2 月 25 日
androidx.annotation:annotation 1.0.2
がリリースされました。
バグの修正
- jar に埋め込まれている R8 / ProGuard ルールを修正します。
androidx.annotation
ではなく以前のandroid.support.annotation
型を誤って参照していました。注: デフォルト ルールには両方のパッケージに対する正しいルールも含まれているため、getDefaultProguardFile
を使用していない場合のみ、ビルドに影響があります。(aosp/891685) - @Keep アノテーション自体を明示的に保持する R8 / ProGuard ルールを追加します。これにより、ProGuard は型のセマンティクスを実際に適用する前に型からアノテーションを削除しません。注: デフォルト ルールには両方のパッケージに対する正しいルールも含まれているため、
getDefaultProguardFile
を使用していない場合のみ、ビルドに影響があります。(aosp/903818)