【问题标题】:ActivityNotFoundException but i've declared in manifestActivityNotFoundException 但我已在清单中声明
【发布时间】:2013-08-06 10:15:18
【问题描述】:
我的错误是
E/AndroidRuntime(11101): android.content.ActivityNotFoundException: Unable to find explicit activity class {com.example.hellolinear/java.text.Normalizer$Form};
have you declared this activity in your `AndroidManifest.xml`?
但在我的清单代码中是:
<activity android:name=".Form"
android:label="@string/app_name">
<intent-filter/>
</activity>
谁能帮帮我?
【问题讨论】:
标签:
android
android-manifest
activitynotfoundexception
【解决方案1】:
如果以上都不行,那么
- 从您的设备中卸载应用程序
- 重启eclipse(如果你正在使用,否则其他
IDE)
- 清理您的项目
【解决方案2】:
检查活动是否在根包中。否则在清单文件中声明时提及包路径。
<activity
android:name="com.example.smstracking.MainActivity"
>
</activity>
【解决方案3】:
也许你的包名不正确?尝试像这样指定完整的包名:
<activity android:name="com.example.hellolinear.Form"
android:label="@string/app_name">
<intent-filter/>
</activity>
然而,正确的方法是在你的清单中添加这样的包名称:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.hellolinear"
android:versionCode="1"
android:versionName="1.0.0" >
【解决方案4】:
至少一个活动必须包含 intent filter,其中包含 action as action.MAIN 和 category as Launcher 据我所知。希望这会有所帮助,因为您没有在清单中提供意图过滤器。
【解决方案5】:
<activity android:name="your package name.Your Activity Name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
【解决方案6】:
您的包名写得不正确。你的代码:
<activity
android:name=".Form"
android:label="@string/app_name">
<intent-filter/>
</activity>
上面写这个:
<activity
android:name="your package name.Form" // eg: android:name="com.example.myapp.Form"
android:label="@string/app_name">
<intent-filter/>
</activity>