LINUX.ORG.RU

Не получается собрать ПОДПИСАННУЮ релизную версию под Андроид

 , ,


0

1

В общем, собираю таким образом:

  1. Подключаю свое андроид устройство
  2. Разворачиваю приложение

Если разворачиваю debug версию - все ок. Разворачивается и работает на смартфоне. Если разворачиваю релизную версию не подписанную, то все так же хорошо. Но стоит попытаться развернуть приложение с галочкой «подписывание пакета» - выдает ошибку сборки

Error: A JNI error has occurred, please check your installation and try again Exception in thread «main» java.lang.UnsupportedClassVersionError: com/android/apksigner/ApkSignerTool has been compiled by a more recent version of the Java Runtime (class file version 53.0), this version of the Java Runtime only recognizes class file versions up to 52.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:763) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:468) at java.net.URLClassLoader.access$100(URLClassLoader.java:74) at java.net.URLClassLoader$1.run(URLClassLoader.java:369) at java.net.URLClassLoader$1.run(URLClassLoader.java:363) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:362) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:495) apksigner command failed. – Run with –verbose for more information.[

Процесс «/android_armv7/bin/androiddeployqt» завершился с кодом 15. Ошибка при сборке/развёртывании проекта (комплект: Android для armeabi-v7a (Clang Qt 5.13.2 for Android ARMv7)) Во время выполнения этапа «Сборка Android APK»

Подскажите, в чем проблема. Во всех гайдах достаточно ввести нужную информацию и пакет подписан, а здесь проблемы какие-то)

Ответ на: комментарий от anonymous

ты текст ошибки прочитал и осознал или сразу на лор прибежал?

Я понял, что проблема в версии Java, но я не совсем понимаю как именно эту проблему исправить и что ее вызвало вообще.

Так как ранее мне удавалось собрать подписанный комплект без проблем

boganet9993
() автор топика

Я понял, что проблема в версии Java, но я не совсем понимаю как именно эту проблему исправить и что ее вызвало вообще.

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

https://stackoverflow.com/questions/47102120/class-file-version-53-0-java-runtime-versions-up-to-52-0-visual-studio-code

Dred ★★★★★
()

тут такое дело, лето - период отпусков у телепатов, а без них лор не может сказать что происходило с версиями джавы в вашей системе и утилиты для подписи apk-файлов. Может утилиту кто-то тайком от вас обновил, может другую версию java какой-то шутник поставил и сделал её дефолтным java-интерпретатором. Так что приходите лучше осенью

cobold ★★★★★
()
Ответ на: комментарий от CrazyAlex25

Используй Java 9. ApkSignerTool собран для 9 версии.

Дело в том, что у меня установлена версия 11

java -version openjdk version «11.0.7» 2020-04-14 OpenJDK Runtime Environment (build 11.0.7+10-post-Ubuntu-3ubuntu1) OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Ubuntu-3ubuntu1, mixed mode, sharing)

Путь JDK в Qt ставлю : /opt/android-studio/jre

boganet9993
() автор топика
Ответ на: Используй Java 9. ApkSignerTool собран для 9 версии. от boganet9993

Решилось

Короче, я снес к херам андроид студио со всеми sdk, ndk и все установленные версии java и просто поставил все заново

Нужно было сразу так и сделать, ибо так бы сэкономил кучу времени

boganet9993
() автор топика
Ответ на: Решилось от boganet9993

Qt и без знания Явы и её инфраструктуры? Я довольно долго страдал вот так как ты, регулярно разгребая непонятные ошибки, возникающие практически после каждого апдейта чего-либо.

Тут нужно либо с Явой разобраться, либо забросить Андроид. Нельзя писать под Андроид без знания Явы и её окружения.

Гугл делает всё возможное чтобы сделать невозможной или неочевидной разработку вне их спец.ДЕ на любом языке кроме Явы.

A_Stahl
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.