Пытаюсь запустить пример Android-приложения DJI UX SDK 4.7, и оно вылетает каждый раз, когда я пытаюсь перейти к полной демонстрации виджетов пользовательского интерфейса. Когда вызывается Helper.install (MApplication.this);, оказывается, что он ищет поле с именем pathList в dalvik.system.PathClassLoader, которое не найдено. Хотя я установил точку останова и четко вижу ее на объекте.
После дополнительной отладки я нашел это сообщение в LogCat:
08-25 06: 19: 38.785 6735-6735 / net.skyora.overwatch A / libc: Фатальный сигнал 11 (SIGSEGV), код 1, адрес ошибки 0x21 в tid 6735 (kyora.overwatch)
Я полностью признаю, что разработка под Android для меня в новинку и, возможно, это ошибка новичка, которую я делаю. Может ли кто-нибудь пролить свет на то, что происходит?
ОБНОВИТЬ: Итак, я получил приложение для работы с эмулятором Android ARM, похоже, проблема с эмуляторами Android X86. Я использую X86 без API Google API 22. Компиляционный и целевой SDK - 24. Минимальный SDK - 19.
Некоторые вещи я обнаружил
Во-первых, я смог без проблем вернуться к UX SDK 4.6.
Во-вторых, я вернулся к 4.7 и начал отключать виджеты в основном интерфейсе. Я обнаружил, что большинство из них, такие как MapWidget, виджеты камеры, FlightModeWidget, остановили приложение. Однако FPVWidget, FPVOverlayWidget, PreFlightStatusWidget и некоторые другие не создавали эту ошибку.
Еще одно странное поведение заключается в том, что образец приложения 4.6 UX SDK для Android предлагал мне войти в мою учетную запись DJI, а 4.7 UX SDK - нет. Это задумано?
Я воссоздал новое приложение, но оно не работает
Я так рад видеть, что разработчики DJI обращают внимание на обмен стеками.
@Keenan Newton - для более быстрого ответа от службы поддержки разработчиков DJI напишите нам по адресу [email protected]. Мы можем устранять проблемы там и обновлять сообщения с результатами.
Однако для решения вашей проблемы вы можете проверить Примечания к выпуску DJI. В нем говорится: «На устройствах x86, работающих под управлением Android API 23 или выше, если приложение нацелено на API 23 или выше, FFmpeg lib может привести к сбоям или предупреждениям во время выполнения».
Вы используете устройство x86 (эмулятор) с целью 24 и поэтому используете цель 22 или ниже.
В прошлый раз, когда я попробовал вашу электронную почту разработчика, я получил быстрый ответ в первый раз, однако после этого я не получал никакого ответа в течение нескольких недель. Я не думаю, что у вас достаточно ресурсов, чтобы помочь всем.
Я предлагаю попробовать зарегистрировать новое приложение на сайте разработчиков DJI и воссоздать его.