libGDX 1.6.1
Этот релиз содержит значительные изменения в системе сборки. iOS нативные библиотеки, например, gdx код, freetype, bullet или box2d теперь упаковываются с использованием RoboVM Jar схемы для нативных библиотек. Статические библиотеки хранятся внутри jar файла в директории META-INF/robovm/ios/libs. Кроме того, небольшой файл robovm.xml хранится в META-INF/robovm/ios/robovm.xml, этот файл описывает нативные библиотеки в libs директории которую должен связать RoboVM.
Если вы обновили существующий проект до версии libGDX 1.6.1, то вам нужно сделать несколько изменений в build.gradle и ios/build.gradle файлах вашего проекта!
В корневом build.gradle файле для iOS проекта вы увидите что-то подобное:
project(":ios") { apply plugin: 'java' apply plugin: 'robovm' configurations { natives } dependencies { compile "org.robovm:robovm-rt:${roboVMVersion}" compile "org.robovm:robovm-cocoatouch:${roboVMVersion}" compile project(":core") compile "com.badlogicgames.gdx:gdx-backend-robovm:$gdxVersion" natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-ios" } }
Вам нужно изменить имя конфигурации natives на compile, так же как и для использования обычных Java зависимостей.
В ios/build.gradle файле можно удалить copyNatives и updateRoboVMXML задачи и любые другие строки, которые ссылаются на эти задачи. В итоге должно получится что-то вроде этого:
sourceSets.main.java.srcDirs = [ "src/" ] sourceCompatibility = '1.7' [compileJava, compileTestJava]*.options*.encoding = 'UTF-8' ext { mainClassName = "com.mygdx.game.IOSLauncher" } launchIPhoneSimulator.dependsOn build launchIPadSimulator.dependsOn build launchIOSDevice.dependsOn build createIPA.dependsOn build eclipse.project { name = appName + "-ios" natures 'org.robovm.eclipse.RoboVMNature' }
После этих изменений просто установите в корневом build.gradle файле gdxVersion на "1.6.1".
Вот список всех изменений данного релиза:
- Добавлен дополнительный аргумент имени хоста в Net.newServerSocket метод, позволяющий привязку определенного IP для серверных приложений, сделанных с использованием gdx.
- Изменен способ обработки нативных iOS библиотек. Удалены updateRoboVMXML и copyNatives задачи из ios/build.gradle файла. Теперь нативные библиотеки упаковываются в jar файлы с META-INF/robovm/ios директорией. Кроме того, robovm.xml файл там же, что позволяет RoboVM сделать слияние с robovm.xml файлом проекта.