#android #shared-libraries #motorola-emdk
#Android #разделяемые библиотеки #motorola-emdk
Вопрос:
У меня есть приложение для чтения штрих-кодов. Это приложение можно использовать с устройством Zebra со встроенным считывателем, подключенным к API, а также с обычным устройством Android с камерой.
Проблема в том, что я получаю эту ошибку
Installation did not succeed.
The application could not be installed: INSTALL_FAILED_MISSING_SHARED_LIBRARY
При установке приложения на устройстве, отличном от Zebra.
Можно ли установить библиотеку как необязательную, чтобы избежать двойной компиляции (с / без третьей библиотеки paty)?
Ответ №1:
Да, вы можете указать библиотеку как необязательную, и вам также необходимо убедиться, что вы не создаете экземпляр класса, который расширяет EMDKListener на устройстве, отличном от Zebra, иначе вы получите сбой. У меня есть пример приложения, которое использует EMDK на устройствах Zebra, но также работает на устройствах, отличных от Zebra, https://github.com/darryncampbell/WakeLock_WifiLock_Exerciser/tree/master/WakeLock_WifiLock_Exerciser. Он не использует EMDK для сканирования, но, надеюсь, вы можете увидеть принцип — MainActivity.java имеет тест, доступен ли EMDK
Комментарии:
1. Мне пришлось установить require=»false» для этого элемента в AndroidManifest.xml
<uses-library android:name="com.symbol.emdk" android:required="false" />