RblSb, Нет, вряд ли, геймканвас — простая оболочка над Canvas.
Насчет действий при выборе jar — в первом посте есть ссылка на почти последние исходники. Если коротка — распаковка, конвертация классов в dex формат., затем манифест, и этот dex ложатся в папку, в которой будет храниться приложение. Потом все найденные ресурсы ложатся с сохранением путей в спец. папку ресурсов приложения.
При запуске сканируется манифест, достается из него главный класс, и с помощью кастомного classloader'a и рефлексии запускается на выполнение. Сложность в том, что оболочка уже должна быть инициализирована до создания экземпляра мидлета, т.к. некоторые любят в конструкторе вызывать разные методы используя ссылку
this
и приходится статически установить все до начала. А если нужен запуск нескольких приложений (да, я собрался делать «мультизадачность»), то статика не подходит.