Форум программистов, компьютерный форум, киберфорум
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Анатолий228
2 / 2 / 1
Регистрация: 03.03.2015
Сообщений: 51
#1

Компиляция игры, libGDX - Программирование Android

31.05.2016, 13:15. Просмотров 718. Ответов 12
Метки нет (Все метки)

Здравствуйте. Помогите скомпилировать проект. Да, странная просьба)
Я так понял, компилировать нужно в Andriod Studio. Игра написана с помощью libGDX.
Но вот как скомпилировать, хотя бы на desctope я не пойму

Спасибо за помощь)
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.05.2016, 13:15
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Компиляция игры, libGDX (Программирование Android):

Libgdx AI - Программирование Android
Добрый день , кто нибудь пользовался данной вещью? https://github.com/libgdx/gdx-ai/wiki Просто кроме этой страницы нигде информации...

SQLite и libGDX - Программирование Android
Здраствуйте! Программирую потихоньку игры на либе, так чисто для себя. Тут пришла в голову идея сделать классную игру, расписал все на...

Libgdx polygon - Программирование Android
Добрый день, возникла следующая проблема : создаю объект класса Polygon (com.badlogic.gdx.math.Polygon) , поворачиваю его, рисую: poly...

Splash на libgdx - Программирование Android
Всем привет есть 2 атласа 2048x2048 на андроиде 4.2 и выше, работает все отлично, все что ниже версией ошибка, причем инициализации....

LibGDX загрузка аудио - Программирование Android
Ни как не получается загрузить музыку. В папку assets помещаю drop.wav rain.mp3 в методе create делаю так Sound dropSound; Music...

Нужен ли мне LibGDX? - Программирование Android
Уважаемые программисты, подскажите, пожалуйста, мне ответ на следующий вопрос: - Я хочу написать очень простую игру (для себя... с целью...

12
Alexvp
108 / 72 / 8
Регистрация: 03.08.2014
Сообщений: 350
31.05.2016, 14:06 #2
А где писали игру?
В сети полно материала, уроков и инструкций как создать в Android Studio проект libGDX. Действуйте прямо по ним. Вот первая ссылка по поиску.
http://www.fandroid.info/libgdx-usta...-android-igry/
0
Анатолий228
2 / 2 / 1
Регистрация: 03.03.2015
Сообщений: 51
31.05.2016, 14:21  [ТС] #3
https://github.com/BrassRobo/Battleships

проект ^^^

Добавлено через 2 минуты
Alexvp, создавать проект я могу
А открыть не получается. Не могу настроить конфигурации
0
Alexvp
108 / 72 / 8
Регистрация: 03.08.2014
Сообщений: 350
31.05.2016, 15:33 #4
Я это делал год назад и подзабыл. Вроде надо не создавать новый проект, а импортировать существующий через загрузочное окно студии, где выбираются проекты. Но это тоже есть в уроках, поищите.
0
Анатолий228
2 / 2 / 1
Регистрация: 03.03.2015
Сообщений: 51
03.06.2016, 01:33  [ТС] #5
Alexvp,

скрин

Компиляция игры, libGDX

Так? Это понятно, но конфиги не могу настроить... В видео они уже есть, а у меня их нет
0
CoolMind
421 / 404 / 65
Регистрация: 06.10.2012
Сообщений: 1,734
03.06.2016, 09:21 #6

Не по теме:

Анатолий228, первая и последняя буквы вашего настоящего имени - А и Й?


Про какую конфигурацию вы говорите? Судя по проекту, там для импорта всё есть.
0
Анатолий228
2 / 2 / 1
Регистрация: 03.03.2015
Сообщений: 51
03.06.2016, 11:44  [ТС] #7
CoolMind, пикча
0
CoolMind
421 / 404 / 65
Регистрация: 06.10.2012
Сообщений: 1,734
03.06.2016, 14:19 #8
Анатолий228, и?
Для начала сделайте Build > Clean project. У вас что-то в build.gradle не так, а что не так, не пишете.
0
Анатолий228
2 / 2 / 1
Регистрация: 03.03.2015
Сообщений: 51
03.06.2016, 16:00  [ТС] #9
CoolMind, "Build > Clean project"
Error20, 1) A problem occurred configuring project ':android'.
> Cannot set the value of read-only property 'jniFolders' on task ':androidackageDebug'.

содержимое build.gradle:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
android {
    buildToolsVersion "19.1.0"
    compileSdkVersion 20
    sourceSets {
        main {
            manifest.srcFile 'AndroidManifest.xml'
            java.srcDirs = ['src']
            aidl.srcDirs = ['src']
            renderscript.srcDirs = ['src']
            res.srcDirs = ['res']
            assets.srcDirs = ['assets']
        }
 
        instrumentTest.setRoot('tests')
    }
}
 
// needed to add JNI shared libraries to APK when compiling on CLI
tasks.withType(com.android.build.gradle.tasks.PackageApplication) { pkgTask ->
    pkgTask.jniFolders = new HashSet<File>()
    pkgTask.jniFolders.add(new File(projectDir, 'libs'))
}
 
// called every time gradle gets executed, takes the native dependencies of
// the natives configuration, and extracts them to the proper libs/ folders
// so they get packed with the APK.
task copyAndroidNatives() { 
    file("libs/armeabi/").mkdirs();
    file("libs/armeabi-v7a/").mkdirs();
    file("libs/x86/").mkdirs();
 
    configurations.natives.files.each { jar ->
        def outputDir = null
        if(jar.name.endsWith("natives-armeabi-v7a.jar")) outputDir = file("libs/armeabi-v7a")
        if(jar.name.endsWith("natives-armeabi.jar")) outputDir = file("libs/armeabi")
        if(jar.name.endsWith("natives-x86.jar")) outputDir = file("libs/x86")
        if(outputDir != null) {
            copy {
                from zipTree(jar)
                into outputDir
                include "*.so"
            }
        }
    }
}
 
task run(type: Exec) {
    def path
    def localProperties = project.file("../local.properties")
    if (localProperties.exists()) {
        Properties properties = new Properties()
        localProperties.withInputStream { instr ->
            properties.load(instr)
        }
        def sdkDir = properties.getProperty('sdk.dir')
        if (sdkDir) {
            path = sdkDir
        } else {
            path = "$System.env.ANDROID_HOME"
        }
    } else {
        path = "$System.env.ANDROID_HOME"
    }
 
    def adb = path + "/platform-tools/adb"
    commandLine "$adb", 'shell', 'am', 'start', '-n', 'com.michaelbasov.battleship.gui.android/com.michaelbasov.battleship.gui.android.AndroidLauncher'
}
 
// sets up the Android Eclipse project, using the old Ant based build.
eclipse {
    // need to specify Java source sets explicitely, SpringSource Gradle Eclipse plugin
    // ignores any nodes added in classpath.file.withXml
    sourceSets {
        main {
            java.srcDirs "src", 'gen'
        }
    }
 
    jdt {
        sourceCompatibility = 1.6
        targetCompatibility = 1.6
    }
 
    classpath {
        plusConfigurations += project.configurations.compile        
        containers 'com.android.ide.eclipse.adt.ANDROID_FRAMEWORK', 'com.android.ide.eclipse.adt.LIBRARIES'       
    }
 
    project {
        name = appName + "-android"
        natures 'com.android.ide.eclipse.adt.AndroidNature'
        buildCommands.clear();
        buildCommand "com.android.ide.eclipse.adt.ResourceManagerBuilder"
        buildCommand "com.android.ide.eclipse.adt.PreCompilerBuilder"
        buildCommand "org.eclipse.jdt.core.javabuilder"
        buildCommand "com.android.ide.eclipse.adt.ApkBuilder"
    }
}
 
// sets up the Android Idea project, using the old Ant based build.
idea {
    module {
        sourceDirs += file("src");
        scopes = [ COMPILE: [plus:[project.configurations.compile]]]        
 
        iml {
            withXml {
                def node = it.asNode()
                def builder = NodeBuilder.newInstance();
                builder.current = node;
                builder.component(name: "FacetManager") {
                    facet(type: "android", name: "Android") {
                        configuration {
                            option(name: "UPDATE_PROPERTY_FILES", value:"true")
                        }
                    }
                }
            }
        }
    }
}
0
Анатолий228
2 / 2 / 1
Регистрация: 03.03.2015
Сообщений: 51
05.06.2016, 03:29  [ТС] #10
Итак, скомпилить мне удалось, дело было в настройках Android Studio.
Но при компиляции в эмуляторе выскочило окно "Unfortunately. Battleships has stopped"

Вот логи ошибки, может поможет кто)
Кликните здесь для просмотра всего текста
06-04 20:27:27.266 1511-1511/? E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.michaelbasov.battleship.gui.android, PID: 1511
java.lang.ExceptionInInitializerError
at java.lang.Class.newInstanceImpl(Native Method)
at java.lang.Class.newInstance(Class.java:1208)
at android.app.Instrumentation.newActivity(Instrumentation.java:1061)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2101)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2233)
at android.app.ActivityThread.access$800(ActivityThread.java:135)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5001)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
at dalvik.system.NativeStart.main(Native Method)
Caused by: com.badlogic.gdx.utils.GdxRuntimeException: Couldn't load shared library 'gdx' for target: Linux, 32-bit
at com.badlogic.gdx.utils.SharedLibraryLoader.load(SharedLibraryLoader.java:116)
at com.badlogic.gdx.utils.GdxNativesLoader.load(GdxNativesLoader.java:34)
at com.badlogic.gdx.backends.android.AndroidApplication.<clinit>(AndroidApplication.java:59)
at java.lang.Class.newInstanceImpl(Native Method)*
at java.lang.Class.newInstance(Class.java:1208)*
at android.app.Instrumentation.newActivity(Instrumentation.java:1061)*
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2101)*
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2233)*
at android.app.ActivityThread.access$800(ActivityThread.java:135)*
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)*
at android.os.Handler.dispatchMessage(Handler.java:102)*
at android.os.Looper.loop(Looper.java:136)*
at android.app.ActivityThread.main(ActivityThread.java:5001)*
at java.lang.reflect.Method.invokeNative(Native Method)*
at java.lang.reflect.Method.invoke(Method.java:515)*
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)*
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)*
at dalvik.system.NativeStart.main(Native Method)*
Caused by: java.lang.UnsatisfiedLinkError: Couldn't load gdx from loader dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.michaelbasov.battleship.gui.android-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.michaelbasov.battleship.gui.android-1, /system/lib]]]: findLibrary returned null
at java.lang.Runtime.loadLibrary(Runtime.java:358)
at java.lang.System.loadLibrary(System.java:526)
at com.badlogic.gdx.utils.SharedLibraryLoader.load(SharedLibraryLoader.java:112)
at com.badlogic.gdx.utils.GdxNativesLoader.load(GdxNativesLoader.java:34)*
at com.badlogic.gdx.backends.android.AndroidApplication.<clinit>(AndroidApplication.java:59)*
at java.lang.Class.newInstanceImpl(Native Method)*
at java.lang.Class.newInstance(Class.java:1208)*
at android.app.Instrumentation.newActivity(Instrumentation.java:1061)*
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2101)*
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2233)*
at android.app.ActivityThread.access$800(ActivityThread.java:135)*
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)*
at android.os.Handler.dispatchMessage(Handler.java:102)*
at android.os.Looper.loop(Looper.java:136)*
at android.app.ActivityThread.main(ActivityThread.java:5001)*
at java.lang.reflect.Method.invokeNative(Native Method)*
at java.lang.reflect.Method.invoke(Method.java:515)*
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)*
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)*
at dalvik.system.NativeStart.main(Native Method)*
0
CoolMind
421 / 404 / 65
Регистрация: 06.10.2012
Сообщений: 1,734
05.06.2016, 19:42 #11
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Анатолий228, синим подчёркивает какие-то ваши классы?
Если нет, то может быть, например, что у вас не загрузилась какая-то библиотека:
Caused by: com.badlogic.gdx.utils.GdxRuntimeException: Couldn't load shared library 'gdx' for target: Linux, 32-bit

Caused by: java.lang.UnsatisfiedLinkError: Couldn't load gdx from loader dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.michaelbasov.battleship.gui.android-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.michaelbasov.battleship.gui.android-1, /system/lib]]]: findLibrary returned null

Добавлено через 1 минуту
Если используете эмулятор или устройство на 32 разряда, а библиотека рассчитана на 64, то не пойдёт. Ищите на 32.
1
Анатолий228
2 / 2 / 1
Регистрация: 03.03.2015
Сообщений: 51
06.06.2016, 00:35  [ТС] #12
CoolMind, спасибо, помогло
0
CoolMind
421 / 404 / 65
Регистрация: 06.10.2012
Сообщений: 1,734
06.06.2016, 08:58 #13
Анатолий228, рад слышать! Также можете поискать библиотеку для ARM-устройств и включить в дистрибутив. Ведь у пользователя могут быть любые устройства.
0
06.06.2016, 08:58
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.06.2016, 08:58
Привет! Вот еще темы с ответами:

LibGDX вращение текстуры - Программирование Android
Здравствуйте, есть ли в llibGDX какой-нибудь способ повернуть текстуру кроме обычного draw, он не устраивает, потому что поворот текстуры...

Libgdx уроки посоветуйте - Программирование Android
Привет! Посоветуйте уроки по LibGDX плиз. В гугле на первом месте сайт - http://suvitruf.ru/libgdx/ Он норм? Может что то еще можно...

Столкновение в libgdx через overlaps - Программирование Android
Есть два списка Rectangle экземпляров. Мне нужно проверить пересечение через if (bullet.overlaps(enemyK) и удалить их оба. С одним объектом...

LibGDX. TexturePacker. Не пакует текстуры - Программирование Android
Sync Project with Gradle Files нажимал. Помогите починить, пожалуйста. Для наглядности: package...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.