Skip to content

Porting midlet instruction

woesss edited this page Jun 13, 2022 · 2 revisions

EN:

Familiarity with the development and assembly of applications for Android is assumed (read separately if you are not familiar). The project contains a demo MIDlet - you can see where everything is, build and run it. To build, use the build variant midlet<Debug/Release> (in the IDE, you should choose it to fully edit the midlet code). If you succeeded or you are a confident Android developer, you can start porting.

  • clone the mod project
  • change the project folder name to whatever you want
  • open the file settings.gradle, in the line rootProject.name = "JL-Mod" replace JL-Mod with the desired name,
    it will be used as the base for the APK/AAB name
  • place the midlet project files in the app/src/midlet folder
    app/src/midlet/java/ - code (.java files)
    app/src/midlet/resources/ - resource files
    app/src/midlet/resources/MIDLET-META-INF/MANIFEST.MF - manifest
    if the application requires additional parameters from JAD, you need to add them to the manifest
  • check calls to getResourcesAsStream(String) - they SHOULD NOT be called on system classes
  • do not use Thread.yield() - it works differently on multi-core processors than on single-core ones.

RU:

Предполагается знакомство с разработкой и сборкой приложений для Андроид (почитайте отдельно, если не знакомы). Проект содержит демонстрационный мидлет - вы можете посмотреть где что лежит, собрать и запустить его. Для сборки используйте build variant midlet<Debug/Release> (в IDE следует выбрать его же для полноценной правки кода). Если у вас это получилось или вы уверенный Андроид-разработчик - можете приступать к портированию.

  • клонируйте проект мода
  • измените название папки проекта на желаемое
  • откройте файл settings.gradle, в строке rootProject.name = "JL-Mod" замените JL-Mod на своё название,
    оно будет использовано как база для названия APK/AAB
  • поместите файлы проекта мидлета в папку app/src/midlet
    app/src/midlet/java/ - код (файлы .java)
    app/src/midlet/resources/ - файлы ресурсов
    app/src/midlet/resources/MIDLET-META-INF/MANIFEST.MF - манифест
    если приложению требуются дополнительные параметры из JAD необходимо добавить их в манифест
  • проверьте вызовы getResourcesAsStream(String) - они НЕ ДОЛЖНЫ вызываться на системных классах
  • не используйте Thread.yield() - на мульти-ядерных процессорах он работает не так, как на одноядерных.
Clone this wiki locally