Я создал свое приложение, используя проект библиотеки (который я также создал для повторного использования в других приложениях). Сборка идет нормально, но когда я пытаюсь установить и запустить ее через Eclipse (Ctrl+F11), я получаю эту красную строку ошибки Could not find MyLib.apk! в моей консоли:
Вывод консоли:
[2013-11-30 14:42:59 - MyApp] ------------------------------
[2013-11-30 14:42:59 - MyApp] Android Launch!
[2013-11-30 14:42:59 - MyApp] adb is running normally.
[2013-11-30 14:42:59 - MyApp] Performing com.sfinja.myapp.ActivitySubClass activity launch
[2013-11-30 14:42:59 - MyApp] Automatic Target Mode: using device '5752068FC64500EA'
[2013-11-30 14:43:00 - MyApp] Application already deployed. No need to reinstall.
[2013-11-30 14:43:00 - MyLib] Could not find MyLib.apk!
[2013-11-30 14:43:00 - MyApp] Starting activity com.sfinja.myapp.ActivitySubClass on device 5752068FC64500EA
[2013-11-30 14:43:00 - MyApp] ActivityManager: Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.sfinja.myapp/.ActivitySubClass }
Поэтому я искал SO и нашел этот поток, который решает проблему, просто сняв флажок Is Library
checkbox проекта библиотеки.
Конечно же, в моем библиотечном проекте (MyLib) был установлен этот флажок, поэтому я снял его, и я больше не получаю эту ошибку в консоли, но затем я начал получать NullPointerExceptions во время выполнения.
Это явно говорит о том, что у меня есть проблема с настройкой/конфигурацией моего проекта (хотя он отлично строится), но чтобы понять, что это такое, я считаю, что мне нужно немного больше понять об этом запутанном флажке:
- У меня есть другие библиотечные проекты, используемые в этом приложении, во всех из которых установлен флажок
Is Library
проверено, но ни один из них не представляет проблемы, проявляемой MyLib. Итак, проверять или не проверять "IsLibrary"? - Если это библиотека, почему флажок
Is Library
должен быть снят? Правильный ответ этой темы 2 года назад все еще действителен? - Является ли сообщение Не удалось найти APK! отвлекающим маневром для чего-то другого?