I am trying to change the screensaver on android phone using codenameone, so for that, I'm using native interface process,
I then create my main class and then after I create "MyNativeContent" that inherits from NativeInterface,
here is the content: package com.faugan.addscreen;
import com.codename1.system.NativeInterface;
/**
*
* @author ccpita
*/
public interface MyNativeContent extends NativeInterface{
public void testAndroidNatif();
}
now I make a right click on my interface to generate native access for all platform,
then after I open MyNativeContentImpl.java from my android directory and I do this inside:
package com.faugan.addscreen;
public class MyNativeContentImpl {
public void testAndroidNatif() {
// code for screensaver on android
}
public boolean isSupported() {
return true;
}
}
Now when i compile this, it fails and i am having this errors:
java.lang.ClassNotFoundException: com.faugan.addscreen.MyNativeContentImpl at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) at java.lang.ClassLoader.findSystemClass(ClassLoader.java:1001) at com.codename1.impl.javase.ClassPathLoader.findClass(ClassPathLoader.java:100) at com.codename1.impl.javase.ClassPathLoader.loadClass(ClassPathLoader.java:50) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:264) at com.codename1.system.NativeLookup.create(NativeLookup.java:81) at com.faugan.addscreen.MyApplication.lambda$start$0(MyApplication.java:47) at com.codename1.ui.util.EventDispatcher.fireActionEvent(EventDispatcher.java:349) at com.codename1.ui.Component.pointerReleased(Component.java:3260) at com.codename1.ui.Form.pointerReleased(Form.java:2651) at com.codename1.ui.Component.pointerReleased(Component.java:3239) Rendering frame took too long 722 milliseconds at com.codename1.ui.Display.handleEvent(Display.java:2025) at com.codename1.ui.Display.edtLoopImpl(Display.java:1070) at com.codename1.ui.Display.mainEDTLoop(Display.java:999) at com.codename1.ui.RunnableWrapper.run(RunnableWrapper.java:120) at com.codename1.impl.CodenameOneThread.run(CodenameOneThread.java:176) java.lang.NullPointerException at com.faugan.addscreen.MyApplication.lambda$start$0(MyApplication.java:48) at com.codename1.ui.util.EventDispatcher.fireActionEvent(EventDispatcher.java:349) at com.codename1.ui.Component.pointerReleased(Component.java:3260) at com.codename1.ui.Form.pointerReleased(Form.java:2651) at com.codename1.ui.Component.pointerReleased(Component.java:3239) at com.codename1.ui.Display.handleEvent(Display.java:2025) at com.codename1.ui.Display.edtLoopImpl(Display.java:1070) at com.codename1.ui.Display.mainEDTLoop(Display.java:999) at com.codename1.ui.RunnableWrapper.run(RunnableWrapper.java:120) at com.codename1.impl.CodenameOneThread.run(CodenameOneThread.java:176)
Now my questions are:
1) while I am having these errors? is it because this is running in a simulator?
2) can you tell me what to put in the testAndroidNatif()
method to change the screensaver on android phones?
Thanks