ClassNotFindException beim Ausführen von Android-Beispiel EffectiveNavigation für ältere Plattform

8

Ich führe das Beispiel von Implementierung einer effektiven Navigation - EffectiveNavigation.zip - aus, die einige zeigt Wischen Sie Ansichten mit Tabs in einer Aktivität. Es läuft gut auf einer neueren Plattform wie 4.2.2 (API17).

Dann möchte ich auch ältere Plattformen wie 2.3.3 (API10) unterstützen, also setze ich die minSdkVersion auf 4:

%Vor%

Ich schließe die Support-Bibliotheken auf eine der folgenden Arten ein:

  1. nach dem Buch: V4 Support-Bibliothek einrichten - ohne Ressourcen
  2. oder nach dem Buch: V7 Support-Bibliothek einrichten - mit Ressourcen
  3. oder klicken Sie mit der rechten Maustaste auf Projekt - & gt; Android Tools- & gt; Support-Bibliothek hinzufügen

Wenn ich die App auf einem 2.3.3-Gerät ausführe, tritt diese mehrdeutige Laufzeitausnahme wie in der folgenden Liste auf.

Bevor ich mich beziehe, muss ich folgendes beachten: Mein Problem ist, dass ich es nicht auf älteren Geräten wie 2.3.3 ausführen kann - aber auf neueren Geräten wie 4.2.2 läuft es gut.

Ich habe gelöscht, neu importiert und neu erstellt und mit verschiedenen geänderten Einstellungen auf verschiedenen Emulatoren erneut ausgeführt. Es läuft nur nicht auf älteren Geräten (mein Zweck ist die Verwendung von Tabs und Swipe-Ansichten in älteren Geräten).

%Vor%     
RumburaK 05.08.2013, 02:05
quelle

2 Antworten

14

Endlich gelöst, nach einem Tag und einer Nacht verschwendete!

Das meiste Problem war, dass die App auch eine ActionBar implementierte und dass mehr Migrationsaufwand nötig war. Ich musste einige andere Bits ändern, um die Unterstützungsbibliotheken (v4 und v7) hauptsächlich zu verwenden:

Codeänderungen in Java-Dateien:

%Vor%

Änderungen in AndroidManifest.xml:

%Vor%

Es geht nicht darum, das Projekt aufzuräumen und neu aufzubauen, obwohl Sie das tun können, wenn Sie sich dadurch besser fühlen.

Jetzt habe ich ActionBar und Tabs mit SwipeViews auf meinem 2.3.3 Android.

Google legt so viel Wert auf diese Backports, und ich muss sie verwenden, schade, dass es keine klarere und vollständigere Dokumentation darüber gibt. Ich habe sogar Probleme, das Video selbst zu finden, wenn ich nicht auf die YouTube-Geschichte verweise - ich weiß nicht einmal, wie ich es überhaupt gefunden habe.

    
RumburaK 05.08.2013, 12:03
quelle
-1

Sie können keine Swipes mit Tabs unterhalb von Android Api 11 verwenden das ist Honeycomb.

So wird die Manifest-Datei aussehen wie

%Vor%     
Prakhar 05.08.2013 04:36
quelle