andEngine无法实例化服务java.lang.ClassNotFoundException

时间:2013-06-15 23:49:41

标签: android andengine classnotfoundexception live-wallpaper

我一直在用引擎创造一个动态壁纸,总的来说我对Android很新。 我一直在比较不同的例子(很难找到任何有用的东西),我想要做的就是创建一个启动的动态壁纸,但显示黑屏。

我得到的错误很常见,我假设

06-15 16:30:01.946: E/AndroidRuntime(32471): FATAL EXCEPTION: main
06-15 16:30:01.946: E/AndroidRuntime(32471): java.lang.RuntimeException: Unable to instantiate service com.example.adtime.LiveWallpaperService: java.lang.ClassNotFoundException: com.example.adtime.LiveWallpaperService in loader dalvik.system.PathClassLoader[/data/app/com.example.adtime-2.apk]
06-15 16:30:01.946: E/AndroidRuntime(32471):    at android.app.ActivityThread.handleCreateService(ActivityThread.java:2943)
06-15 16:30:01.946: E/AndroidRuntime(32471):    at android.app.ActivityThread.access$3300(ActivityThread.java:125)
06-15 16:30:01.946: E/AndroidRuntime(32471):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2087)
06-15 16:30:01.946: E/AndroidRuntime(32471):    at android.os.Handler.dispatchMessage(Handler.java:99)
06-15 16:30:01.946: E/AndroidRuntime(32471):    at android.os.Looper.loop(Looper.java:123)

此外,这是我的清单:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.adtime"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="17" />
    <uses-feature 
        android:required="true"
        android:name="android.software.live_wallpaper">
        </uses-feature>

    <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" >
        <!--  Live Wallpaper Service -->
        <service android:name="com.example.adtime.LiveWallpaperService"
            android:enabled="true"
            android:permission="android.permission.BIND_WALLPAPER" 
            android:icon="@drawable/ic_launcher" 
            android:description="@string/wallpaper_description">
        <intent-filter android:priority="1">
            <action android:name="android.service.wallpaper.WallpaperService"/>
        </intent-filter> 
        <meta-data android:name="android.service.wallpaper"
            android:resource="@xml/wallpaper"/>
        </service>
    </application>

</manifest>

基于我一直在阅读的问题似乎在某个地方的清单中,我只是不确定在哪里。我一直在寻找不同的例子,我觉得我做得对,但显然没有。 apk安装,但一打开动态壁纸,我就会得到错误。 (我正在尝试使用实际设备)

另外,我确实已经设置并链接了库,但是我没有带jar的libs文件夹,因为我认为这是旧方法。

您可以提供的任何信息都非常有用,谢谢。

2 个答案:

答案 0 :(得分:0)

可能会发生此错误,因为您的应用仅包含服务。如此SO question中所述,您无法仅使用服务创建应用。

答案 1 :(得分:0)

WallpaperService只能在设备上测试,不要使用Android模拟器。您不需要android:required="true

您需要在Android清单中添加一项活动:

<activity android:label="@string/app_name"
            android:name=".Settings"
            android:exported="true"
            android:theme="@android:style/Theme.Light.WallpaperSettings"
            android:icon="@drawable/ic_launcher" />