ActionBarSherlock + Maps + Loaders = java.lang.NoClassDefFoundError

Editar: Para um tutorial detalhado, confiraminha resposta.

Eu estou lutando com isso por dois dias agora, espero que alguém possa ajudar.

Eu estou tentando usar o mais novo ActionBarSherlock (4.0) com um MapView. Eu sabia que é problemático com fragmentos, mas não preciso deles nessa atividade. Mas eu preciso de Loaders e parece que, para usar Loaders eu tenho que estender o FragmentActivity também. Não tem problema, pensei, nós temos oandroid-support-v4-googlemaps de Pete Doyle. Como sugerido em muitos segmentos SO e Grupos do Google, eu construo o ABS com o Android-support-v4-googlemaps JAR (android-support-v13-r7-googlemaps.jar, na verdade) em vez de android-support-v4.jar. Então eu usei isso como uma biblioteca para o meu projeto.

Agora, gostaria de ter minha atividade assim:

public class BananoutMapActivity extends SherlockFragmentActivity implements LoaderCallbacks<ArrayList<EventItem>>{

O problema:

Ele compila, mas gera um erro de tempo de execução:E/AndroidRuntime(29159): java.lang.NoClassDefFoundError: ndl.klimczak.bananout.BananoutMapActivity

Coisas que eu tripliquei:

Tanto o projeto da biblioteca ActionBarSherlock quanto o meu projeto são direcionados às APIs do Google 4.0.3eu tenho<uses-library android:name="com.google.android.maps" /> e eu tenho isso na tag do aplicativo.Eu também tenho o mesmo android-support-v13-r7-googlemaps.jar no caminho de construção do meu projetoeu tenho.BananoutMapActivity declarado no meu manifesto

O que é interessante:

Quando eu executo em um emulador ICS ele funciona (o erro aparece em 2. * emuladores e meu dispositivo 2.3.7), no Honeycomb ele funcionaria muito provavelmente, é a questão de usar o ACL eu acho

Quando eu remover oimplements LoaderCallbacks<ArrayList<EventItem>> parte funciona também, mas dessa forma eu não consigo usar o LoaderManager

Por que diabos o erro NoClassDefFoundError e como fazer os Loaders trabalharem no meu MapCapableSherlockEnabledFragmentActivity?

questionAnswers(2)

yourAnswerToTheQuestion