Я прочитал на странице инструмента apt, что можно создать AnnotationProcessors для генерировать новые производные файлы (исходные файлы, файлы классов, дескрипторы развертывания и т.д.).. Я ищу пример для этого.
Мне нужно кодировать все аннотированные строки во время компиляции, поэтому чтение файла класса не позволяет читать статические строки:
Базовый код:
String message = (@Obfuscated "a string that should not be readable in class file");
Необходимо переработать как:
String message = new ObfuscatedString(new long[] {0x86DD4DBB5166C13DL, 0x4C79B1CDC313AE09L, 0x1A353051DAF6463BL}).toString();
На основе статического метода ObfuscatedString.obfuscate(String)
структуры TrueLicense процессор может сгенерировать код для замены аннотированной строки. В самом деле, этот метод генерирует строку "новый ObfuscatedString ([numeric_code]). ToString()".
Во время выполнения метод toString() ObfuscatedString может возвращать строку, закодированную в числовом коде.
Любая идея о том, как написать метод process() AnnotationProcessor для редактирования аннотированного кода?
Спасибо заранее,