Вопрос

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

Он работает красиво, за исключением консоли Eclipse (нет Logcat!) Выдает следующее сообщение об ошибке:

[2011-06-13 19:54:08 - MyLibrary] Could not find MyLibrary.apk!

Я очистил оба проекта (библиотека а также Приложение), перезапущенное затмение, повторно создано проекты, но это странное сообщение об ошибке сохраняется.

Что означает это сообщение об ошибке? (Особенно в свете, что все работает хорошо)

Как мне избавиться от этого?

ОБНОВИТЬ: Я попытался удалить проект, а затем повторно импортировал его в соответствии с предложением ниже. Это не помогло. Я тогда нашел эта ветка Это помогло мне понять, что у меня <uses-library> В приложении AndroidManifest.xml, ссылаясь на MyLibrary. Я удалил его, очистил проект и восстановил. Проблема сохраняется.

Теперь я подозреваю, что это «настоящая проблема», например, неправильная конфигурация некоторых путей или что -то еще с моей стороны. Что бы это могло быть?

Это было полезно?

Решение

Я нашел источник проблемы!

Оказывается, что "С помощью новой библиотечной функции вы не указываете проекты Android, от которых вы зависите в разделе «Путь сборки Java». Вы делаете это в разделе Android в свойствах".

Итак, все, что мне нужно было сделать, это пойти на приложение проект Properties, ударь Projects вкладка, выберите мой собственный библиотечный проект и нажмите Remove кнопка. Вот и все. Нет больше проблем.

В Eclipse Java EE выберите свойства проекта, затем выберите Project References, затем проверьте FacebookSDK (см. Экранный захват) enter image description here

Благодаря Ланс Нанек!

Другие советы

Это интересно ... Я не совсем сделал то, что определяет ответ ..

У меня есть отдельный проект Android под названием "ConnectionHandler"Что подключается к веб -сервису для получения информации. Этот проект не содержит классов активности. (Если это произойдет, вам потребуются изменения в файле AndroidManifest в вашем основном приложении, а также следовать приведенным ниже инструкциям).

Использовать мой отдельный ConnectionHandler Project Как библиотека мне нужно было сделать следующее:

  1. В основном приложении> Выберите свойства проекта> Перейдите в путь сборки Java> Добавить банки> Выберите папку ConnectionHandler> Выберите ConnectionHandler.jar
  2. В проекте ConnectionHandler> Выберите свойства проекта> Android> Проверьте Islibrary
  3. В MainApplication> выберите свойства проекта> перейдите в Android> Добавьте ссылку на ConnectionHandler в разделе библиотеки.

Это работает для мне, И я могу подключиться к своему веб -сервису, хотя у меня нет исходных файлов, чтобы сделать это в моем основном приложении. Все содержится в моей банке ConnectionHandler, на которую ссылаются.

Надеюсь, это поможет кому -то ...

Сегодня я начал получать это сообщение об ошибке в консольном представлении о Eclipse, но оказывается, что это не было проблемой. Мое приложение будет построено и установлено на моем устройстве, и даже выполняется на долю секунды (пока оно не разбилось). Это то, как выглядел мой консольный вид на Eclipse:

[2013-06-03 09:42:25 - my-android] Android Launch!
[2013-06-03 09:42:25 - my-android] adb is running normally.
[2013-06-03 09:42:25 - my-android] Performing com.my.android.activity.MainActivity activity launch
[2013-06-03 09:42:25 - my-android] Uploading my-android.apk onto device '650rfs2e'
[2013-06-03 09:42:31 - my-android] Installing my-android.apk...
[2013-06-03 09:42:35 - my-android] Success!
[2013-06-03 09:42:36 - my-other-android] Could not find my-other-android.apk!
[2013-06-03 09:42:36 - android-SherlockFragment] Could not find android-SherlockFragment.apk!
[2013-06-03 09:42:36 - my-android] Starting activity com.my.android.activity.MainActivity on device 650rfs2e
[2013-06-03 09:42:36 - my-android] ActivityManager: Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.my.android/.activity.MainActivity }

Но при тщательном осмотре моей логкотики было выброшено глупое исключение из фрагмента, который я пытался инициализировать. Как только я исправил свой фрагмент (который поднимал NPE), все сработало просто отлично, даже через мою консоль все еще говорит мне, что не может найти эти библиотеки APK.

Пробовали ли вы удалить проект, не удаляя из жесткого и переосмысления проекта. Это, казалось, сработало для меня, когда у меня возникла эта проблема.

Используя предпочтения Eclipse, вы можете в конечном итоге, чтобы LIBS были добавлены повсюду. У меня были ссылки на LIB в /libs и ссылались на библиотечные папки. Мне пришлось удалить или удалить их из этих мест и вставить его в зависимости Android (используя предпочтения -> Android и просмотр флажки «IS Library».)

Правильный макет для моего проекта:http://www.pasteall.org/pic/show.php?id=34513

Для меня причина, по которой это происходило, заключалась в том, что библиотечный проект и главный проект имели тот же пакет. Самый простой способ изменить пакет - это right click on the library project > Android Tools > Rename Application Package.

Решением этой проблемы для меня было удаление ошибочных записей из манифестного файла библиотечных проектов.

Сбой произойдет только во время выполнения, когда он достиг первого использования моего библиотечного проекта. Как только я изменю свойство «Имя приложения», чтобы отразить правильный класс приложения для проекта, который использовал Библиотечный проект, затем он сработал

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top