[英]Activity not found with AndroidAnnotations
嗨,我添加了AndroidAnnotations
并对其进行了配置; 它使用下划线_
作为后缀生成活动,但是当我尝试在应用程序中午餐时,它会出现此错误
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
关于它为什么不起作用的任何建议
PD:我的ADT v22 PD:我在清单上注册了HelloAndroidActivity_
这是我的manifest.xml(抱歉延迟)
<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>
您需要将“.apt_generated”或AA输出的文件夹添加到源目录列表中。 在Android Studio中,您可以在项目设置 - >模块 - > module_in_question - > Sources中找到它
你需要在manifest.xml中注册活动类(AndroidAnnotations),如: <activity android:name = "com.your.packageName" android:screenOrientation="portrait" android:configChanges = "orientation"/>
然后你可以使用它。
检查清单文件以获取活动的条目。 检查名称。
如果您将ADT更新为rev 22.您可以在更改项目中的任何内容但升级eclipse android sdk之后尝试此java.lang.ClassNotFoundException 。
检查清单中的包名称
<manifest package="com.example.mypackaganame" //check the name
在应用程序标记下检查活动条目
<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>
假设您有第二个活动。 这是你如何声明隐式意图
<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>
敌人明确意图
<activity
android:name=".SecondActivity"
// this is the Second activity
android:label="@string/app_name" >
</activity>
如果您使用的是Eclipse,请执行以下步骤:
步骤1.转到Java Compiler
并确保将Compiler compliance level设置为1.6,否则将不会激活处理器
步骤2.转到Java Compiler
> Annotation Processing
并选择Enable annotation processing
步骤3.转到Java Compiler
> Annotation Processing
> Factory Path
并添加处理器JAR: androidannotations-XXXjar。
步骤4确认工作区重建
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.