Hi there, I am struggling with Slick AE, Eclipse and the Emulator.
I really followed the tutorial
http://slick.cokeandcode.com/wiki/doku. ... unceanator but is not enought or it changed in a certain way with the version of the Emulator.
So I have problem about the fact it does not find my main class (Main0001a()) located in the normal slick project that works when I execute it. Of course, everything is compiling,
means that the normal slick project is set in class path of the android project.Code:
package com.atalante.droid;
import org.newdawn.slick.SlickActivity;
import android.os.Bundle;
import com.atalante.droid.Main0001a;
public class MainActivity extends SlickActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
start(new Main0001a(),480,800);
}
}
It compiled but failed with this exception (the package is installed in the emulator but failed when it starts) :
Could not find class 'com.atalante.droid.Main0001a'Code:
08-12 14:27:31.140: E/Trace(687): error opening trace file: No such file or directory (2)
08-12 14:27:31.410: E/dalvikvm(687): Could not find class 'com.atalante.droid.Main0001a', referenced from method com.rob.MainActivity.onCreate
08-12 14:27:31.430: W/dalvikvm(687): VFY: unable to resolve new-instance 65 (Lcom/atalante/droid/Main0001a;) in Lcom/rob/MainActivity;
08-12 14:27:31.460: D/dalvikvm(687): VFY: replacing opcode 0x22 at 0x0003
08-12 14:27:31.460: D/dalvikvm(687): DexOpt: unable to opt direct call 0x008c at 0x05 in Lcom/rob/MainActivity;.onCreate
08-12 14:27:31.510: W/System.err(687): GdxNativesLoader: Couldn't unpack and load native 'libgdx.so'
08-12 14:27:31.530: D/dalvikvm(687): Trying to load lib /data/data/com.rob/lib/libgdx.so 0x411e1140
08-12 14:27:31.550: D/dalvikvm(687): Added shared lib /data/data/com.rob/lib/libgdx.so 0x411e1140
08-12 14:27:31.550: D/dalvikvm(687): No JNI_OnLoad found in /data/data/com.rob/lib/libgdx.so 0x411e1140, skipping init
08-12 14:27:31.560: E/SLICK(687): Slick-AE 0
08-12 14:27:31.641: D/dalvikvm(687): GC_CONCURRENT freed 56K, 2% free 8367K/8519K, paused 18ms+3ms, total 74ms
08-12 14:27:31.641: D/dalvikvm(687): WAIT_FOR_CONCURRENT_GC blocked 56ms
08-12 14:27:31.650: D/AndroidRuntime(687): Shutting down VM
08-12 14:27:31.650: W/dalvikvm(687): threadid=1: thread exiting with uncaught exception (group=0x40a13300)
08-12 14:27:31.660: E/AndroidRuntime(687): FATAL EXCEPTION: main
08-12 14:27:31.660: E/AndroidRuntime(687):java.lang.NoClassDefFoundError: com.atalante.droid.Main0001a
08-12 14:27:31.660: E/AndroidRuntime(687): at com.rob.MainActivity.onCreate(MainActivity.java:14)
08-12 14:27:31.660: E/AndroidRuntime(687): at android.app.Activity.performCreate(Activity.java:5008)
08-12 14:27:31.660: E/AndroidRuntime(687): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1079)
08-12 14:27:31.660: E/AndroidRuntime(687): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2023)
08-12 14:27:31.660: E/AndroidRuntime(687): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2084)
08-12 14:27:31.660: E/AndroidRuntime(687): at android.app.ActivityThread.access$600(ActivityThread.java:130)
08-12 14:27:31.660: E/AndroidRuntime(687): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1195)
08-12 14:27:31.660: E/AndroidRuntime(687): at android.os.Handler.dispatchMessage(Handler.java:99)
08-12 14:27:31.660: E/AndroidRuntime(687): at android.os.Looper.loop(Looper.java:137)
08-12 14:27:31.660: E/AndroidRuntime(687): at android.app.ActivityThread.main(ActivityThread.java:4745)
08-12 14:27:31.660: E/AndroidRuntime(687): at java.lang.reflect.Method.invokeNative(Native Method)
08-12 14:27:31.660: E/AndroidRuntime(687): at java.lang.reflect.Method.invoke(Method.java:511)
08-12 14:27:31.660: E/AndroidRuntime(687): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
08-12 14:27:31.660: E/AndroidRuntime(687): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
08-12 14:27:31.660: E/AndroidRuntime(687): at dalvik.system.NativeStart.main(Native Method)
the Main0001a().class is like this :
Code:
package com.atalante.droid;
import org.newdawn.slick.AppGameContainer;
import org.newdawn.slick.GameContainer;
import org.newdawn.slick.SlickException;
import org.newdawn.slick.state.StateBasedGame;
import org.newdawn.slick.state.transition.FadeInTransition;
public class Main0001a extends StateBasedGame {
public Main0001a() {
super("Test");
this.addState(new TestScreenLite());
this.enterState(GameStates.LITE.getId(), null, new FadeInTransition());
}
@Override
public void initStatesList(GameContainer container) throws SlickException {
}
public static void main(String[] argv) {
try {
AppGameContainer container = new AppGameContainer(new Main0001a());
container.setDisplayMode(1024,768,false);
container.start();
} catch (SlickException e) {
e.printStackTrace();
}
}
}
and TestScreenLite extends BasicGameState.
The only 'important' code is this one (it is a super simple class as you can see):
Code:
public void render(GameContainer container, StateBasedGame game, Graphics g)
throws SlickException {
g.drawString("hello", 0,0);
}
I even tried to put directly the jar of my normal project into the android one, but I have still the same error.
So I tried to make the Slick-AEDemo and it works when it is the desktop version launched. (this version is implementing the ApplicationGDXContainer)
Now when I tried to launch the version Slick-AEDemo-Android same error ...
Code:
08-12 14:41:20.800: E/AndroidRuntime(727): FATAL EXCEPTION: main
08-12 14:41:20.800: E/AndroidRuntime(727): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{test.slick.bounceanate/test.slick.bounceanate.BounceAnatorAndroid}: java.lang.ClassNotFoundException: test.slick.bounceanate.BounceAnatorAndroid
08-12 14:41:20.800: E/AndroidRuntime(727): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1983)
08-12 14:41:20.800: E/AndroidRuntime(727): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2084)
08-12 14:41:20.800: E/AndroidRuntime(727): at android.app.ActivityThread.access$600(ActivityThread.java:130)
08-12 14:41:20.800: E/AndroidRuntime(727): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1195)
08-12 14:41:20.800: E/AndroidRuntime(727): at android.os.Handler.dispatchMessage(Handler.java:99)
08-12 14:41:20.800: E/AndroidRuntime(727): at android.os.Looper.loop(Looper.java:137)
08-12 14:41:20.800: E/AndroidRuntime(727): at android.app.ActivityThread.main(ActivityThread.java:4745)
08-12 14:41:20.800: E/AndroidRuntime(727): at java.lang.reflect.Method.invokeNative(Native Method)
08-12 14:41:20.800: E/AndroidRuntime(727): at java.lang.reflect.Method.invoke(Method.java:511)
08-12 14:41:20.800: E/AndroidRuntime(727): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
08-12 14:41:20.800: E/AndroidRuntime(727): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
08-12 14:41:20.800: E/AndroidRuntime(727): at dalvik.system.NativeStart.main(Native Method)
08-12 14:41:20.800: E/AndroidRuntime(727): Caused by: java.lang.ClassNotFoundException: test.slick.bounceanate.BounceAnatorAndroid
08-12 14:41:20.800: E/AndroidRuntime(727): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:61)
08-12 14:41:20.800: E/AndroidRuntime(727): at java.lang.ClassLoader.loadClass(ClassLoader.java:501)
08-12 14:41:20.800: E/AndroidRuntime(727): at java.lang.ClassLoader.loadClass(ClassLoader.java:461)
08-12 14:41:20.800: E/AndroidRuntime(727): at android.app.Instrumentation.newActivity(Instrumentation.java:1053)
08-12 14:41:20.800: E/AndroidRuntime(727): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1974)
08-12 14:41:20.800: E/AndroidRuntime(727): ... 11 more
WTF I am doing wrong?
I changed this in the project.properties
target=android-16
then
target=android-7
then
target=android-4
(with the corresponding API for the Emulator) and got same bad luck. I am sure it is something simple ... but what?
Code:
08-12 15:08:13.027: I/jdwp(213): received file descriptor 10 from ADB
08-12 15:08:13.047: D/ddm-heap(213): Got feature list request
08-12 15:08:13.227: E/dalvikvm(213): Could not find class 'bounceAnator.BounceAnator', referenced from method test.slick.bounceanate.BounceAnatorAndroid.onCreate
08-12 15:08:13.227: W/dalvikvm(213): VFY: unable to resolve new-instance 65 (LbounceAnator/BounceAnator;) in Ltest/slick/bounceanate/BounceAnatorAndroid;
08-12 15:08:13.227: W/dalvikvm(213): VFY: rejecting opcode 0x22 at 0x0003
08-12 15:08:13.227: W/dalvikvm(213): VFY: rejected Ltest/slick/bounceanate/BounceAnatorAndroid;.onCreate (Landroid/os/Bundle;)V
08-12 15:08:13.227: W/dalvikvm(213): Verifier rejected class Ltest/slick/bounceanate/BounceAnatorAndroid;
08-12 15:08:13.227: W/dalvikvm(213): Class init failed in newInstance call (Ltest/slick/bounceanate/BounceAnatorAndroid;)
08-12 15:08:13.227: D/AndroidRuntime(213): Shutting down VM
08-12 15:08:13.227: W/dalvikvm(213): threadid=3: thread exiting with uncaught exception (group=0x4001aa28)
08-12 15:08:13.227: E/AndroidRuntime(213): Uncaught handler: thread main exiting due to uncaught exception
08-12 15:08:13.227: E/AndroidRuntime(213): java.lang.VerifyError: test.slick.bounceanate.BounceAnatorAndroid
08-12 15:08:13.227: E/AndroidRuntime(213): at java.lang.Class.newInstanceImpl(Native Method)
08-12 15:08:13.227: E/AndroidRuntime(213): at java.lang.Class.newInstance(Class.java:1472)
08-12 15:08:13.227: E/AndroidRuntime(213): at android.app.Instrumentation.newActivity(Instrumentation.java:1097)
08-12 15:08:13.227: E/AndroidRuntime(213): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2316)
08-12 15:08:13.227: E/AndroidRuntime(213): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2417)
08-12 15:08:13.227: E/AndroidRuntime(213): at android.app.ActivityThread.access$2100(ActivityThread.java:116)
08-12 15:08:13.227: E/AndroidRuntime(213): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1794)
08-12 15:08:13.227: E/AndroidRuntime(213): at android.os.Handler.dispatchMessage(Handler.java:99)
08-12 15:08:13.227: E/AndroidRuntime(213): at android.os.Looper.loop(Looper.java:123)
08-12 15:08:13.227: E/AndroidRuntime(213): at android.app.ActivityThread.main(ActivityThread.java:4203)
08-12 15:08:13.227: E/AndroidRuntime(213): at java.lang.reflect.Method.invokeNative(Native Method)
08-12 15:08:13.227: E/AndroidRuntime(213): at java.lang.reflect.Method.invoke(Method.java:521)
08-12 15:08:13.227: E/AndroidRuntime(213): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:791)
08-12 15:08:13.227: E/AndroidRuntime(213): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:549)
08-12 15:08:13.227: E/AndroidRuntime(213): at dalvik.system.NativeStart.main(Native Method)
08-12 15:08:13.257: I/dalvikvm(213): threadid=7: reacting to signal 3
08-12 15:08:13.257: E/dalvikvm(213): Unable to open stack trace file '/data/anr/traces.txt': Permission denied
A remark : I am working on windows 64 ... does it can make a such pb?