Posted on

Kotlin Explorer

Kotlin Explorer — это настольный инструмент для быстрого изучения дизассемблированного кода на Kotlin.

Он позволяет быстро и удобно дизассемблировать Kotlin-код в:

  • байткод Java,
  • байткод Android DEX,
  • ассемблер Android OAT (AOT-компиляция).

Как использовать

После запуска Kotlin Explorer введите корректный Kotlin-код в левую панель, затем нажмите Build > Build & Disassemble или используйте Cmd-Shift-D (macOS) / Ctrl-Shift-D (Linux и Windows).

По умолчанию:

  • средняя панель покажет DEX-байткод Android,
  • правая панель — нативный ассемблер, полученный в результате предварительной компиляции (AOT).
    Видимость панелей настраивается через меню View.

Возможности

  • Build > Optimize with R8 — включает оптимизации R8. Может повлиять на отображение номеров строк исходного кода в байткоде и DEX.
  • View > Sync Lines — синхронизация текущей строки между исходным кодом, байткодом и DEX. Для корректной работы может потребоваться отключение R8.
  • View > Presentation Mode — увеличивает размер шрифта для презентаций.
  • Build > Build on Startup — автоматическая компиляция при запуске приложения.
  • Build > Run — компиляция и локальный запуск Kotlin-кода. Результаты отображаются в логах.
  • Нажатие на команду перехода (jump instruction) показывает стрелку к целевой инструкции.
  • Отображается количество инструкций и ветвлений на метод.
  • Клик по инструкции или регистру подсвечивает все их вхождения.
  • Встроенная документация по aarch64 (ARM 64-bit). Включается через View > Show Logs & Documentation.

https://github.com/romainguy/kotlin-explorer