【发布时间】:2017-03-02 20:43:58
【问题描述】:
我正在尝试使用 codenameone 更改 android 手机上的屏幕保护程序,因此,我正在使用本机界面进程,
然后我创建我的主类,然后在创建从 NativeInterface 继承的“MyNativeContent”之后,
内容如下: 包 com.faugan.addscreen;
import com.codename1.system.NativeInterface;
/**
*
* @author ccpita
*/
public interface MyNativeContent extends NativeInterface{
public void testAndroidNatif();
}
现在我在我的界面上单击鼠标右键,为所有平台生成本机访问,
然后在我从我的 android 目录打开 MyNativeContentImpl.java 并在里面执行此操作后:
package com.faugan.addscreen;
public class MyNativeContentImpl {
public void testAndroidNatif() {
// code for screensaver on android
}
public boolean isSupported() {
return true;
}
}
现在当我编译它时,它失败了,我遇到了这个错误:
java.lang.ClassNotFoundException: com.faugan.addscreen.MyNativeContentImpl 在 java.net.URLClassLoader.findClass(URLClassLoader.java:381) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:424) 在 sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:357) 在 java.lang.ClassLoader.findSystemClass(ClassLoader.java:1001) 在 com.codename1.impl.javase.ClassPathLoader.findClass(ClassPathLoader.java:100) 在 com.codename1.impl.javase.ClassPathLoader.loadClass(ClassPathLoader.java:50) 在 java.lang.Class.forName0(本机方法) 在 java.lang.Class.forName(Class.java:264) 在 com.codename1.system.NativeLookup.create(NativeLookup.java:81) 在 com.faugan.addscreen.MyApplication.lambda$start$0(MyApplication.java:47) 在 com.codename1.ui.util.EventDispatcher.fireActionEvent(EventDispatcher.java:349) 在 com.codename1.ui.Component.pointerReleased(Component.java:3260) 在 com.codename1.ui.Form.pointerReleased(Form.java:2651) 在 com.codename1.ui.Component.pointerReleased(Component.java:3239) 渲染帧耗时 722 毫秒 在 com.codename1.ui.Display.handleEvent(Display.java:2025) 在 com.codename1.ui.Display.edtLoopImpl(Display.java:1070) 在 com.codename1.ui.Display.mainEDTLoop(Display.java:999) 在 com.codename1.ui.RunnableWrapper.run(RunnableWrapper.java:120) 在 com.codename1.impl.CodenameOneThread.run(CodenameOneThread.java:176) java.lang.NullPointerException 在 com.faugan.addscreen.MyApplication.lambda$start$0(MyApplication.java:48) 在 com.codename1.ui.util.EventDispatcher.fireActionEvent(EventDispatcher.java:349) 在 com.codename1.ui.Component.pointerReleased(Component.java:3260) 在 com.codename1.ui.Form.pointerReleased(Form.java:2651) 在 com.codename1.ui.Component.pointerReleased(Component.java:3239) 在 com.codename1.ui.Display.handleEvent(Display.java:2025) 在 com.codename1.ui.Display.edtLoopImpl(Display.java:1070) 在 com.codename1.ui.Display.mainEDTLoop(Display.java:999) 在 com.codename1.ui.RunnableWrapper.run(RunnableWrapper.java:120) 在 com.codename1.impl.CodenameOneThread.run(CodenameOneThread.java:176)
现在我的问题是:
1) 当我遇到这些错误时?是因为这是在模拟器中运行的吗?
2) 你能告诉我在testAndroidNatif() 方法中添加什么来更改安卓手机的屏幕保护程序吗?
谢谢
【问题讨论】:
标签: java android codenameone