我正在使用HERE maps api开发应用。我复制并粘贴了我发现here的代码,因为我想了解如何使用api。这是startApp()
方法
protected void startApp() throws MIDletStateChangeException {
System.err.println("1st line of midlet");
ApplicationContext.getInstance().setAppID("my id here");
ApplicationContext.getInstance().setToken("my token here");
System.err.println("before display");
Display display = Display.getDisplay(this);
MapCanvas mapCanvas = new MapCanvas(display){
public void onMapUpdateError(String description,Throwable detail, boolean critical) {
// Error handling goes here.
}
public void onMapContentComplete() {
}
};
mapCanvas.getMapDisplay().setState(new MapDisplayState(new GeoCoordinate(52.51, 13.4, 0), 10));
display.setCurrent(mapCanvas);
}
当我运行此代码时,出现以下错误:
有什么问题?请帮助我理解这个错误的实际原因。
我现在已经尝试了3个小时了。
此致
答案 0 :(得分:1)
这与API无关 - MIDlet尚未启动 - 应用程序在尝试启动时失败。如果您快速在线搜索com.sun.midp.main.CldcMIDletLoader.newInstance()
,则会发现类似问题的实例,例如this,这表明问题与您的midlet配置有关。
所以要么遵循这里的建议:
我有几乎相同的错误。设置正确后我的问题解决了 应用程序描述符编辑器中的名称和类(当然是在eclipse中)
打开项目jad文件并在Midlet中填写正确的信息 标签。 (您的midlet名称和班级名称)
或者使用已为Eclipse和Netbeans正确配置应用程序描述符的关联code examples中的代码重新启动。我想你可能已经下载了这些例子,因为它们构成了Asha SDK 1.0 Beta下载的一部分。在这种情况下,您应该在C:\Nokia\Devices\Nokia_Asha_SDK_1_0\plugins\maps api\example
下找到它们。