![](/img/trans.png)
[英]android.content.ActivityNotFoundException: Unable to find explicit activity class in Android
[英]android.content.ActivityNotFoundException ,unable to start activity
我正在尝试提供动态壁纸服务,该壁纸服务运行正常,但我收到了
03-20 19:13:21.039: E/AndroidRuntime(4147): FATAL EXCEPTION: main
03-20 19:13:21.039: E/AndroidRuntime(4147): java.lang.IllegalStateException: Could not execute method of the activity
03-20 19:13:21.039: E/AndroidRuntime(4147): at android.view.View$1.onClick(View.java:2144)
03-20 19:13:21.039: E/AndroidRuntime(4147): at android.view.View.performClick(View.java:2485)
03-20 19:13:21.039: E/AndroidRuntime(4147): at android.view.View$PerformClick.run(View.java:9080)
03-20 19:13:21.039: E/AndroidRuntime(4147): at android.os.Handler.handleCallback(Handler.java:587)
03-20 19:13:21.039: E/AndroidRuntime(4147): at android.os.Handler.dispatchMessage(Handler.java:92)
03-20 19:13:21.039: E/AndroidRuntime(4147): at android.os.Looper.loop(Looper.java:130)
03-20 19:13:21.039: E/AndroidRuntime(4147): at android.app.ActivityThread.main(ActivityThread.java:3687)
03-20 19:13:21.039: E/AndroidRuntime(4147): at java.lang.reflect.Method.invokeNative(Native Method)
03-20 19:13:21.039: E/AndroidRuntime(4147): at java.lang.reflect.Method.invoke(Method.java:507)
03-20 19:13:21.039: E/AndroidRuntime(4147): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867)
03-20 19:13:21.039: E/AndroidRuntime(4147): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:625)
03-20 19:13:21.039: E/AndroidRuntime(4147): at dalvik.system.NativeStart.main(Native Method)
03-20 19:13:21.039: E/AndroidRuntime(4147): Caused by: java.lang.reflect.InvocationTargetException
03-20 19:13:21.039: E/AndroidRuntime(4147): at java.lang.reflect.Method.invokeNative(Native Method)
03-20 19:13:21.039: E/AndroidRuntime(4147): at java.lang.reflect.Method.invoke(Method.java:507)
03-20 19:13:21.039: E/AndroidRuntime(4147): at android.view.View$1.onClick(View.java:2139)
03-20 19:13:21.039: E/AndroidRuntime(4147): ... 11 more
03-20 19:13:21.039: E/AndroidRuntime(4147): Caused by:
android.content.ActivityNotFoundException:
Unable to find explicit activity class {com.miccialabs.liveballwallpaper/com.miccialabs.LiveBallWallpaperSettings};
have you declared this activity in your AndroidManifest.xml?
03-20 19:13:21.039: E/AndroidRuntime(4147): at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1405)
03-20 19:13:21.039: E/AndroidRuntime(4147): at android.app.Instrumentation.execStartActivity(Instrumentation.java:1379)
03-20 19:13:21.039: E/AndroidRuntime(4147): at android.app.Activity.startActivityForResult(Activity.java:2827)
03-20 19:13:21.039: E/AndroidRuntime(4147): at android.app.Activity.startActivity(Activity.java:2933)
03-20 19:13:21.039: E/AndroidRuntime(4147): at com.android.wallpaper.livepicker.LiveWallpaperPreview.configureLiveWallpaper(LiveWallpaperPreview.java:125)
03-20 19:13:21.039: E/AndroidRuntime(4147): ... 14 more
03-20 19:13:21.046: E/(1516): Dumpstate > /data/log/dumpstate_app_error
当我尝试访问其设置时,清单如下:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.miccialabs.liveballwallpaper"
android:versionName="1"
android:versionCode="1">
<uses-sdk android:minSdkVersion="7" />
<uses-feature android:name="android.software.live_wallpaper" />
<application android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:permission="android.permission.BIND_WALLPAPER">
<activity
android:name="com.miccialabs.liveballwallpaper.LiveBallWallpaperSettings"
android:label="@string/liveWallpaper_settings"
android:exported="true"
android:icon="@drawable/ic_launcher">
</activity>
<service android:name="com.miccialabs.liveballwallpaper.BallLiveWallpaper"
android:label="@string/app_name"
android:icon="@drawable/ic_launcher">
<intent-filter>
<action android:name="android.service.wallpaper.WallpaperService" />
</intent-filter>
<meta-data android:name="android.service.wallpaper"
android:resource="@xml/livewallpaper" />
</service>
</application>
这是设置活动:
package com.miccialabs.liveballwallpaper;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.preference.PreferenceActivity;
public class LiveBallWallpaperSettings extends PreferenceActivity
implements SharedPreferences.OnSharedPreferenceChangeListener
{
@Override
protected void onCreate(Bundle icicle)
{
super.onCreate(icicle);
getPreferenceManager().setSharedPreferencesName(com.miccialabs.liveballwallpaper.BallLiveWallpaper.SHARED_PREFS_NAME);
addPreferencesFromResource(R.xml.livewallpaper_settings);
getPreferenceManager().getSharedPreferences()
.registerOnSharedPreferenceChangeListener(this);
}
@Override
protected void onResume()
{
super.onResume();
}
@Override
protected void onDestroy()
{
getPreferenceManager().getSharedPreferences()
.unregisterOnSharedPreferenceChangeListener(this);
super.onDestroy();
}
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,
String key)
{
}
}
我想念什么? 它说无法找到显式活动类,但我已经声明了,那怎么了?
据我所见,android尝试在此处找到您的Activity:
com.miccialabs.liveballwallpaper/com.miccialabs.LiveBallWallpaperSettings
因此,可能是LiveBallWallpaperSettings.java中的“包”未正确定义。
另外,您已经声明了您的程序包(“ com.miccialabs.liveballwallpaper”),因此对于“活动”的名称,您应该仅使用.ActivityName,如下所示:
<activity
android:name=".LiveBallWallpaperSettings"
android:label="@string/liveWallpaper_settings"
android:exported="true"
android:icon="@drawable/ic_launcher">
</activity>
希望能帮助到你。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.