3

Androidライブ壁紙のチュートリアルサンプルをいくつか実行しようとしましたが、常にこのエラーが発生しました

09-28 16:13:30.729: E/AndroidRuntime(408): java.lang.RuntimeException: サービス net.markguerra.android.glwallpaperexample.MyWallpaperService をインスタンス化できません: java.lang.ClassNotFoundException: net.markguerra.android.glwallpaperexample.ローダーの MyWallpaperService dalvik.system.PathClassLoader[/data/app/net.markguerra.android.glwallpaperexample-1.apk]

これは私のマニフェストファイルです

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="net.markguerra.android.glwallpaperexample"
      android:versionCode="1"
      android:versionName="1.0">
    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <service android:label="@string/service_label" android:name=".MyWallpaperService"
            android:permission="android.permission.BIND_WALLPAPER">
            <intent-filter>
                <action android:name="android.service.wallpaper.WallpaperService" />
            </intent-filter>
            <meta-data android:name="android.service.wallpaper"
                android:resource="@xml/myglwallpaper" />
        </service>
    </application>
    <uses-sdk android:minSdkVersion="7" />

</manifest> 

私が作成した壁紙サービス

package net.markguerra.android.glwallpaperexample;

import net.rbgrn.android.glwallpaperservice.*;

// Original code provided by Robert Green
// http://www.rbgrn.net/content/354-glsurfaceview-adapted-3d-live-wallpapers

public class MyWallpaperService extends GLWallpaperService {
    public MyWallpaperService() {
        super();
    }

    public Engine onCreateEngine() {
        MyEngine engine = new MyEngine();
        return engine;
    }

    class MyEngine extends GLEngine {
        MyRenderer renderer;
        public MyEngine() {
            super();
            // handle prefs, other initialization
            renderer = new MyRenderer();
            setRenderer(renderer);
            setRenderMode(RENDERMODE_CONTINUOUSLY);
        }

        public void onDestroy() {
            super.onDestroy();
            if (renderer != null) {
                renderer.release();
            }
            renderer = null;
        }
    }
}

これは私のプロジェクト構造です

ここに画像の説明を入力

何が問題なのかわかりません。エラーは何ですか? どんな提案でも私にとって大きな助けになります

スタックに関するいくつかの関連する質問が見つかりましたが、ライブ壁紙には関係ありません

4

2 に答える 2

3

フォルダに含める必要がGLWallpaperService.jarあります。libs

于 2012-09-28T11:23:49.560 に答える
2

それはlibではなくlibsでなければなりませんか、それとも間違っていますか? libs を使用すると、res や bin などのフォルダーに小さな a が表示されるはずです...

于 2012-09-28T21:47:21.883 に答える