2013-05-26 14 views
5

Hallo ich habe die AndroidAnnotations hinzugefügt und konfiguriert; erzeugt sie die Aktivität mit einem Unter _ als Suffix, aber wenn ich zum Mittagessen die App versuchen, gibt es diese StörungAktivität nicht gefunden mit AndroidAnnotationen

05-26 04:17:23.524: E/AndroidRuntime(5096): java.lang.RuntimeException: 
    Unable to instantiate activity 
    ComponentInfo{android_app.candgo/android_app.candgo.HelloAndroidActivity_}: 
    java.lang.ClassNotFoundException: Didn't find class 
    "android_app.candgo.HelloAndroidActivity_"  
    on path: /data/app/android_app.candgo-1.apk 

Jede Andeutung darüber, warum es nicht

PD funktioniert: Ich habe ADT v22 PD: ich habe die HelloAndroidActivity_ registriert bei manifesten

das ist mein manifest.xml (sorry für die Verzögerung)

<uses-sdk android:minSdkVersion="8" 
      android:targetSdkVersion="16" /> 

    <application android:icon="@drawable/icon" android:label="@string/app_name"> 
    <activity android:name="MainActivity_"> 
     <intent-filter> 
     <action android:name="android.intent.action.MAIN" /> 
     <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
    </application> 
</manifest> 

Antwort

0

müssen Sie die Aktivitätsklasse (AndroidAnnotations) in Ihrem manifest.xml registrieren, wie: <activity android:name = "com.your.packageName" android:screenOrientation="portrait" android:configChanges = "orientation"/>
dann können Sie es verwenden.

+0

I ersetzt hatte, dass stattdessen das Original, das Suffix _ zu dem Manifest Und noch nicht – neoshadybeat

+0

vielleicht funktioniert Sie Beiträge verfassen benötigen manifestxml Inhalt oder screenshots, ich bin mir sicher, dass in Ihrem manifest.xml etwas nicht stimmt. –

0

Überprüfen Sie Ihre Manifestdatei auf einen Eintrag der Aktivität. Überprüfen Sie den Namen.

Wenn Sie ADT auf Rev 22 aktualisiert haben, können Sie dies java.lang.ClassNotFoundException after changing nothing in the project but upgrading eclipse android sdk versuchen.

Überprüfen Sie den Paketnamen in manifest

<manifest package="com.example.mypackaganame" //check the name 

prüfen unter Anwendung Tag für den Aktivitätseintrag

<activity 
     android:name="com.example.mypackaganame.MainActivity" 
     // this is the main activity 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 

Sagen Sie bitte zweite Aktivität haben. Diese, wie Sie für implizite Absichten erklären

 <activity 
     android:name="com.example.mypackaganame.SecondActivity" 
     // this is the Second activity 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="com.example.mypackaganame.SecondActivity" /> 

      <category android:name="android.intent.category.DEFAULT" /> 
     </intent-filter> 
    </activity>   

Foe explizite Absichten

 <activity 
     android:name=".SecondActivity" 
     // this is the Second activity 
     android:label="@string/app_name" > 
    </activity>   
3

Sie müssen die „.apt_generated“ hinzuzufügen, oder je nachdem, welcher Ordner AA Ausgänge, um Ihre Quellverzeichnisse Auflistung. In Android Studio können Sie diese in Projekteinstellungen finden -> Module -> module_in_question -> Quellen

+0

Wenn das nicht funktioniert, haben Sie noch weitere Vorschläge? – Nick

0

Wenn Sie mit Eclipse- gehen Sie folgendermaßen vor:

Schritt 1. Zum Java Compiler und machen Sie sicher, dass Compiler Compliance-Niveau wird auf 1,6 gesetzt, andernfalls wird der Prozessor nicht

Schritt 2. zum Java Compiler>Annotation Processing und wählen aktiviert werden aktivieren Anmerkung Verarbeitung

Schritt 3. Zum Java Compiler>Annotation Processing>Factory Path und den Prozessor JAR hinzufügen: androidannotations-X.X.X.jar.

Schritt 4 Bestätigen Sie den Arbeitsbereich wieder aufbauen

Verwandte Themen