Редактировать: Подробные инструкции см. в моем ответе .
Я бьюсь над этим уже два дня, надеюсь, кто-нибудь сможет помочь.
Я пытаюсь использовать последнюю версию ActionBarSherlock (4.0) с MapView. Я знал, что это проблематично с фрагментами, но они мне не нужны в этом упражнении. Но мне нужны загрузчики, и оказывается, что для использования загрузчиков мне также нужно расширить FragmentActivity. Нет проблем, подумал я, у нас есть android-support-v4-googlemapsот Пита Дойла. Как было предложено во многих потоках SO и группах Google, я создаю ABS с помощью JAR-файла android-support-v4-googlemaps (фактически android-support-v13-r7-googlemaps.jar) вместо android-support-v4.jar. Затем я использовал его как библиотеку для своего проекта.
Теперь я хотел бы, чтобы моя деятельность выглядела следующим образом:
открытый класс BananoutMapActivity расширяет SherlockFragmentActivity, реализует LoaderCallbacks
Проблема:
Он компилируется, но выдает ошибку времени выполнения: E/AndroidRuntime(29159): java.lang.NoClassDefFoundError: ndl.klimczak.bananout.BananoutMapActivity
Вещи, которые я проверил трижды:
и он есть в теге приложения..BananoutMapActivity
, объявленный в моем манифестеЧто интересно:
Когда я запускаю его на эмуляторе ICS, он работает (ошибка появляется на эмуляторах 2.* и моем устройстве 2.3.7), на Honeycomb он, вероятно, тоже будет работать, я думаю, это вопрос использования ACL
Когда я удаляю часть , реализующую LoaderCallbacks
, она тоже работает, но таким образом я не могу использовать LoaderManager
С какой стати ошибка NoClassDefFoundError и как заставить работать загрузчики в моей MapCapableSherlockEnabledFragmentActivity?