Как создать источник SDK для Android, чтобы получить Android.jar

Я не эксперт по Android, но мне нужно, чтобы байт-код Android-SDK проводил некоторые эксперименты.

Я скомпилировал источник Androids, но удивительно, что он выводит тот же SDK, который в основном содержит хромые заглушки, которые генерируют исключения.

Как вы знаете, android.jar, который включен в пакет разработчиков, содержит заглушки, и все методы во всех классах просто бросают новое RuntimeException («заглушка»); Цель этого SDK заключается только в том, чтобы позволить разработчикам создавать против android.jar в Eclipse и выполнять их программы на устройствах / эмуляторах, где находится фактический SDK.

Я отделил java-файлы от источника Android для SDK, но у меня не было успеха в их компиляции. Мне было интересно, есть ли способ сделать это или извлечь их с устройств. Моя конечная цель – сортировать Android-приложения на обычных JVM и запускать их на эмуляторе или в Dalvik.

Вы не можете запустить код android.jar на JVM. Как вы сказали в своем вопросе, вы получите исключение во время выполнения, если вы это сделаете. Это по дизайну, так что вы получаете все инструменты синтаксиса и повторного факторинга из популярных java IDE, таких как eclipse.

Android.jar только для Eclipse, как сказано. Если мы внесем некоторые изменения в Framework и попытаемся использовать один и тот же файл buildroid.jar, он будет компилироваться отлично. Но он будет иметь ошибки во время выполнения, поскольку вам необходимо обновить system.img, который имеет все файлы lib и jar во время выполнения. Замените system.img на сборку костюма. это будет работать.