はじめに Android界隈で最近aptを使ったライブラリが増えてきていると感じています。しかしapt自身、特にAndroidでの書き方を解説している日本語の記事は多くありません。ライブラリを書かないとしても、どのように動くかを知っておくことでエラーに対応しやすくなったり、プルリクを送りやすくなったり良いことがあると思うので、私の経験を踏まえてaptのライブラリを作るときの知見を共有したいと思います。 apt(Annotation Processing Tool)とは Jake WhartonのDroidconのスライド(Annotation Processing Boilerplate Destruction)を見てくれという感じなのですが、枚数が多いので簡単と説明すると、Javaはコンパイル時に処理を割り込む仕組みがあり、そのときに渡されるソースコードのメタデータの塊を操作してコードを