今日のエントリは@vvakameさんのTwitterでの一連の呟きから閃いて書いた。 AndroidはJava言語とその周辺の環境を利用して開発する。 Java言語は元々プリプロセッサを持たず、お世辞にもリッチとはいえないビルド環境※のお陰で、ランタイムに全ての処理を行うようにプログラミングしがちだ。それはAndroidでも変わらない(変わってくれると良かったのだが) 例えば、現在書いているライブラリィはどこにあるか解らないアクションクラスを前もって内部に登録するためにAndroidパッケージの内部を走査する。 public static void forEachDexFile(final DexFile dexFile) { final String targetPackage = handler.getContext().getPackageName(); final Enumerat