インク
| 最新の更新 | 安定版リリース | リリース候補版 | ベータ版リリース | アルファ版リリース |
|---|---|---|---|---|
| 2026 年 9 月 9 日 | 1.0.0 | - | - | 1.1.0-alpha08 |
依存関係の宣言
Ink への依存関係を追加するには、Google の Maven リポジトリをプロジェクトに追加する必要があります。詳しくは、Google の Maven リポジトリをご覧ください。
アプリまたはモジュールの build.gradle ファイルに、必要なアーティファクトの依存関係を追加します。
Groovy
dependencies { implementation "androidx.ink:ink-authoring:1.1.0-alpha04" implementation "androidx.ink:ink-authoring-compose:1.1.0-alpha04" implementation "androidx.ink:ink-brush:1.1.0-alpha04" implementation "androidx.ink:ink-brush-compose:1.1.0-alpha04" implementation "androidx.ink:ink-geometry:1.1.0-alpha04" implementation "androidx.ink:ink-geometry-compose:1.1.0-alpha04" implementation "androidx.ink:ink-nativeloader:1.1.0-alpha04" implementation "androidx.ink:ink-rendering:1.1.0-alpha04" implementation "androidx.ink:ink-storage:1.1.0-alpha04" implementation "androidx.ink:ink-strokes:1.1.0-alpha04" }
Kotlin
dependencies { implementation("androidx.ink:ink-authoring:1.1.0-alpha04") implementation("androidx.ink:ink-authoring-compose:1.1.0-alpha04") implementation("androidx.ink:ink-brush:1.1.0-alpha04") implementation("androidx.ink:ink-brush-compose:1.1.0-alpha04") implementation("androidx.ink:ink-geometry:1.1.0-alpha04") implementation("androidx.ink:ink-geometry-compose:1.1.0-alpha04") implementation("androidx.ink:ink-nativeloader:1.1.0-alpha04") implementation("androidx.ink:ink-rendering:1.1.0-alpha04") implementation("androidx.ink:ink-storage:1.1.0-alpha04") implementation("androidx.ink:ink-strokes:1.1.0-alpha04") }
依存関係について詳しくは、ビルド依存関係の追加をご覧ください。
フィードバック
お寄せいただいたフィードバックは Jetpack 改善の参考にさせていただきます。新しい問題が見つかった場合や、このライブラリを改善するアイデアをお持ちの場合は、お知らせください。新しい問題を報告していただく前に、このライブラリの既存の問題をご確認ください。スターボタンをクリックすると、既存の問題に投票できます。
詳細については、Issue Tracker のドキュメントをご覧ください。
Ink バージョン 1.1
バージョン 1.1.0-alpha08
2026 年 9 月 9 日
androidx.ink:ink-*:1.1.0-alpha08 がリリースされました。バージョン 1.1.0-alpha08 に含まれる commit については、こちらをご覧ください。
API の変更
- コア機能の KMP 共通 API に基づき、オプトイン アノテーション
ExperimentalInkCrossPlatformRenderingApiの下でMetalRendererを介して KMP iOS のレンダリング サポートを追加 Target.TEXTURE_ANIMATION_PROGRESS_OFFSETをTarget.PAINT_ANIMATION_PROGRESS_OFFSETに名前変更します。(I8809f)- オーバーロード
ImmutableAffineTransform.translate(float x, float, y)とMutableAffineTransform populateFromTranslation(float x, float y)を追加しました(I8809f) DampingNodeプロパティの名前をdampingSourceからdampOverに変更(Id3178)DampingNodeプロパティの名前をdampingGapからstrengthに変更(I69432)FloatではなくEasingFunction.CubicBezierを定義するときにVec型を使用(I69432)- メッシュ編集の消しゴム関数
Stroke.subtractとStroke.splitにWorkerThreadアノテーションを追加(I69432)
バグの修正
Brushサンプルを KMP 互換にしました(I77125)
バージョン 1.1.0-alpha07
2026 年 8 月 12 日
androidx.ink:ink-*:1.1.0-alpha07 がリリースされました。バージョン 1.1.0-alpha07 に含まれる commit については、こちらをご覧ください。
API の変更
- 高密度パーティクル ブラシに影響するパフォーマンスの回帰を修正し、API フィードバックに基づいて Brush.Version 定数を更新(I87f0f)
バージョン 1.1.0-alpha06
2026 年 7 月 29 日
androidx.ink:ink-*:1.1.0-alpha06 がリリースされました。バージョン 1.1.0-alpha06 に含まれる commit については、こちらをご覧ください。
API の変更
BrushFamilyサブタイプの API にcalculateMinimumRequiredVersionメソッドを追加しました。(I338c9)AffineTransformコンポーネント フィールドを公開(Ic2ec3)InProgressStrokesViewのメモリリークを修正、試験運用版の部分ストローク消しゴムの視覚的なアーティファクトを改善、カスタムブラシ テクスチャ レイヤの protobuf 表現を改善(I6ff86)MutableAffineTransformの初期化コンストラクタを追加(ImmutableAffineTransformと一致させるため)(I96ec7)InProgressStroke.clearを追加しました(Ie0032)- 可変サブクラスと不変サブクラスを持つデータ構造に
toImmutableメソッドを追加(I53835) - KMP の移行(Icbf38、b/521850119、b/534309122)
バグの修正
- ブラシのバージョン管理とテクスチャ アニメーションのサポートをさらに追加しました。(Iea9ba)
バージョン 1.1.0-alpha05
2026 年 7 月 15 日
androidx.ink:ink-*:1.1.0-alpha05 がリリースされました。バージョン 1.1.0-alpha05 に含まれる commit については、こちらをご覧ください。
API の変更
- 「部分ストローク」、「メッシュ編集」、「ピクセル」消しゴムと呼ばれる新しい消しゴムの試験運用版をリリースしました。この消しゴムは、ストローク全体を削除したり、背景色でマスクしたりするのではなく、ストロークの形状を編集してストロークを分割します。既知の問題としては、切り取りエッジのアンチエイリアシングの欠如や、消去された
PartitionedMeshの結果を保存するためのシリアル化 API がないことが挙げられます。これらは今後のリリースで対応される予定です。 StrokeInputBatchSerialization.decodeに欠落していた Throws アノテーションを追加しました。このメソッドの Java コンシューマーは更新が必要です。(I83473、b/522256938)
バグの修正
- 数値精度に関する問題によるネイティブ クラッシュを修正しました(I2e1f0、6618e69、b/523190724)
BrushTipExtruderで縮退した押し出しを破棄(469b629)InProgressStrokesViewのRejectedExecutionExceptionを修正しました(b/526696762)
バージョン 1.1.0-alpha04
2026 年 6 月 17 日
androidx.ink:ink-*:1.1.0-alpha04 がリリースされました。バージョン 1.1.0-alpha04 に含まれる commit については、こちらをご覧ください。
API の変更
OS アップグレード後に特定のデバイスで、ストロークの終了時に視覚的なアーティファクトが発生する原因となる浮動小数点精度の問題を修正
ストレージ モジュールの KMP-common API を追加(Java の
InputStream/OutputStreamではなくByteArrayとの間でやり取り)。カスタム ブラシ ファミリーのデザインを説明するメタデータを保持する
BrushBehavior.developerCommentプロパティを追加します。これは、ブラシ デザイナー UI をサポートするためのものです。CanvasInProgressStrokesRenderHelperV33のスレッド整合性チェックのバグを修正しました。MotionEventオプション フィールド(傾き、圧力など)の処理に関するバグを修正しました。カスタムブラシ API のドキュメントを改善しました。
新しい
BrushPaint.ColorFunction型を追加します。
バージョン 1.1.0-alpha03
2026 年 5 月 19 日
androidx.ink:ink-*:1.1.0-alpha03 がリリースされました。バージョン 1.1.0-alpha03 に含まれる commit については、こちらをご覧ください。
API の変更
バージョン 1.1.0-alpha02
2026 年 4 月 22 日
androidx.ink:ink-*:1.1.0-alpha02 がリリースされました。バージョン 1.1.0-alpha02 に含まれる commit については、こちらをご覧ください。
API の変更
- 最大バージョン互換性を指定する
BrushFamily.decodeのオーバーロードを公開(I1c7bc) BrushFamilyシリアル化 API を試験運用版から卒業させました(Idd16e)
バグの修正
- 特定のデバイスで
InProgressStrokesView.maskPathを使用したときに発生するちらつきを修正(I1c7bc、b/496920044)
バージョン 1.1.0-alpha01
2026 年 3 月 11 日
androidx.ink:ink-*:1.1.0-alpha01 がリリースされました。バージョン 1.1.0-alpha01 に含まれる commit については、こちらをご覧ください。
新機能
- さまざまな軽微なバグを修正
API の変更
InProgressShape.isCanceledを追加し、オーサリング モジュールの同時実行の問題を修正。(Ibfd32、b/474385518、b/470695777)CanvasStrokeRenderer.createとInProgressStroke.updateShapeの引数なしバージョンを Java に公開(Id80a1、b/457715938)
バグの修正
- API 29 ~ 32 でウィンドウから切り離して再接続した後に
InProgressStrokesViewでクラッシュが発生するバグを修正し、Vec オペレーションで同じMutableVecを入力と出力として使用できるようにし、Proguard 構成を 1 つのファイルに統合しました。(Ia4da0) - graphics-core への依存関係を 1.0.4 に引き上げ(Ibfa18)
バージョン 1.0
バージョン 1.0.0
2025 年 12 月 17 日
androidx.ink:ink-*:1.0.0 がリリースされました。バージョン 1.0.0 に含まれる commit については、こちらをご覧ください。
バグの修正
graphics-coreへの依存関係を 1.0.4 に引き上げ(Ibfa18)
バージョン 1.0.0-rc01
2025 年 12 月 3 日
androidx.ink:ink-*:1.0.0-rc01 がリリースされました。バージョン 1.0.0-rc01 には、これらの commit が含まれています。
バグの修正
- 依存関係のバージョンを更新します。(Iecd04)
バージョン 1.0.0-beta02
2025 年 11 月 19 日
androidx.ink:ink-*:1.0.0-beta02 がリリースされました。バージョン 1.0.0-beta02 にはこれらの commit が含まれています。
API の変更
- 試験運用版のカスタム低レイテンシ シェイプ API、さまざまなバグの修正(Ib8d2f)
バグの修正
StrokeInputBatchシリアル化の浮動小数点精度を改善し、エンコードとデコードの繰り返しによる値のずれを修正- システム入力のサニタイズがより堅牢になりました。
InProgressStrokesコンポーザブルでのブラシ テクスチャのサポートを修正
バージョン 1.0.0-beta01
2025 年 10 月 22 日
androidx.ink:ink-*:1.0.0-beta01 がリリースされました。バージョン 1.0.0-beta01 にはこれらの commit が含まれています。
バグの修正
- beta01 リリースに向けたバグの修正(I9900e)
- モデル化された入力が近すぎるためにストロークでレンダリング アーティファクトが減少。
- 入力モデリングでまれに発生するクラッシュを修正しました。
バージョン 1.0.0-alpha07
2025 年 10 月 8 日
androidx.ink:ink-*:1.0.0-alpha07 がリリースされました。バージョン 1.0.0-alpha07 に含まれる commit については、こちらをご覧ください。
新機能
StockBrusheshighlighterとemojiHighlighterのSelfOverlapパラメータ(InProgressStrokesViewrendererFactoryを置き換えます)- ストローク入力の平滑化の実装を改善。デバイスの測定ノイズを排除しつつ、以前のストローク入力の平滑化の実装よりもユーザー入力を正確に反映
- 角度単位(度とラジアン)、変換(スキューとシアー)など、他の Android/Jetpack API との整合性を改善
API の変更
- 角度関連の API を度数を使用するように変更し、名前に単位を含め、角度変換ユーティリティの単位を明確にし、度数とラジアンの両方をサポートし、
StockBrushesAPI をファクトリ関数パラメータとしてストック ブラシ バージョンを受け取るように変更し、ハイライト ブラシの自己オーバーラップ動作制御を公開し、MutableAffineTransform.populateFromTranslateをpopulateFromTranslationに変更し、InProgressStrokesView.setRenderFactory/getRenderFactoryを削除。(Id9eab、b/436656418) - shear の名前を skew に変更し、一部のドキュメントを明確化し、
CanvasStrokeRenderer.strokeModifiedRegionOutsetPxを削除し、InProgressStroke.changesWithTimeを追加しました。(Ia5e70、b/436656418)
バグの修正
- 入力モデリングを改善し、入力がより正確に反映されるようにしました。(I93097)
バージョン 1.0.0-alpha06
2025 年 8 月 13 日
androidx.ink:ink-*:1.0.0-alpha06 がリリースされました。バージョン 1.0.0-alpha06 に含まれる commit については、こちらをご覧ください。
新機能
- 絵文字ハイライトのストック ブラシ: 選択した絵文字でドキュメントの一部をハイライト表示し、楽しい雰囲気を加え、整理整頓に役立てることができます。
- ジオメトリ モジュールのプリミティブ形状用のヘルパー API の追加
- デバイスの互換性とパフォーマンスを改善
API の変更
InProgressStrokesViewの API をシンプルにする、ジオメトリ API を完成させる、絵文字ハイライト表示、入力メソッドを優先してMutableParallelogramから Factory 関数を削除、ランダム化されたブラシの動作のシードをサポート。(I38280)
バグの修正
- パフォーマンスの問題と、濡れた状態と乾いた状態での色の整合性の問題を修正します。(Ifcd1d)
バージョン 1.0.0-alpha05
2025 年 6 月 18 日
androidx.ink:ink-*:1.0.0-alpha05 がリリースされました。バージョン 1.0.0-alpha05 に含まれる commit については、こちらをご覧ください。
新機能
- オーサリング、ブラシ、ジオメトリ モジュールの Compose 相互運用性モジュール
API の変更
- 新しい Compose 相互運用モジュールと API、API のクリーンアップ(I0e464)
kotlin.Resultを返していたInProgressStroke.enqueueInputs/updateShapeメソッドが削除されました。クライアントは代わりにenqueueInputsOrThrowやenqueueInputsOrIgnoreなどを使用する必要があります。InProgressStroke.getNeedsUpdateの名前がisUpdateNeededに変更されました。Ink の他のメソッドと一貫性を持たせるため、InProgressStroke.populateOutlinePositionが出力パラメータを返すようになり、呼び出しの連鎖が可能になりました。TextureBitmapStoreインターフェースがレンダリング モジュールからブラシ モジュールに移動されました。BoxAccumulator.populateFromは、可変のBoxAccumulatorではなく、null 可能な不変の Box を取るように変更されました。変更された内容を明確にするため、呼び出し元はboxAccumulator.add(other)をboxAccumulator.add(other.box)に変更する必要があります。BrushUtil.toBuilderWithAndroidColor/createBuilderWithAndroidColorが削除されました。代わりに、構築後にBrush.BuilderのsetAndroidColorを使用してください。(Ia7155)- 以前は試験運用版だったプロパティ
InProgressStrokesView.textureBitmapStoreが非公開になりました。このプロパティにはまだ公開アクセサが残っています。(I1d706)
バグの修正
- 多数のパーティクルを含むカスタム ブラシのパフォーマンスが向上しました。
バージョン 1.0.0-alpha04
2025 年 4 月 9 日
androidx.ink:ink-*:1.0.0-alpha04 がリリースされました。バージョン 1.0.0-alpha04 に含まれる commit については、こちらをご覧ください。
新機能
- カスタム
BrushFamilyオブジェクト用の新しい試験運用版 API を導入し、鉛筆やレーザー ポインターなどの新しいブラシを有効にします。この API を使用すると、この proto で定義されたブラシを読み込むことができます。(I8809a)
バージョン 1.0.0-alpha03
2025 年 2 月 12 日
androidx.ink:ink-*:1.0.0-alpha03 がリリースされました。バージョン 1.0.0-alpha03 に含まれる commit については、こちらをご覧ください。
新機能
- ディスクとネットワークのサイズを節約:
StrokeInputBatchのシリアル化により、コードの行数を大幅に削減し、生成されたオブジェクトのサイズを従来のストロークのサイズのごく一部に抑えます。(Ie898d) - なげなわ選択: 選択ストロークを描画する破線ブラシと、選択ストロークをジオメトリ クエリ用の
PartitionedMeshに変換する関数。(Ia38a0)
バージョン 1.0.0-alpha02
2024 年 12 月 11 日
androidx.ink:ink-*:1.0.0-alpha02 がリリースされました。バージョン 1.0.0-alpha02 に含まれる commit については、こちらをご覧ください。
API の変更
- さまざまなバグを修正しました。(I05dd8)
外部からの協力
BuildCompat.isAtLeastVのサポートが終了しました。呼び出し元は、代わりに SDK_INT を 35 と直接比較する必要があります。(I294d1)
バージョン 1.0.0-alpha01
2024 年 10 月 2 日
androidx.ink:ink-*:1.0.0-alpha01 がリリースされました。バージョン 1.0.0-alpha01 に含まれる commit については、こちらをご覧ください。
新機能
- アプリケーションで作成された美しいインク ストロークを簡単に作成、レンダリング、操作できる、モジュール式で構成可能なライブラリ。
API の変更
デベロッパーがリッチなインク エクスペリエンスを構築するのに役立つ新しいモジュール:
- オーサリング: 入力が受信されると、
InProgressStrokesViewを使用してストロークをリアルタイムで高パフォーマンスかつ低レイテンシでレンダリングします。 - レンダリング:
CanvasStrokeRendererとViewStrokeRendererを使用して、アプリのユーザー インターフェースの一部としてインク ストロークを描画します。 - ストローク: 手書き機能に使用されるコアデータ型。
- ブラシ: ユーザー入力に応じてストロークがどのように表示され、動作するかを設定できる仕様。
- ジオメトリ: 選択や消去などのツールを強化するための、交差やカバレッジなどの幾何学的演算。