我需要将 GPS 功能添加到我编写的现有黑莓应用程序中。我编写了一个名为 CurrentLocation 的独立类,并包含一个方法来设置我关心的各种位置变量,方法是将黑莓 GPS 与谷歌的反向地理编码网络服务结合使用。一切都很顺利,也就是说,直到我尝试在我的主应用程序中实例化我的新类。
无论我做什么,我都会得到 LocationException!.getLocation() 不起作用!
这真的让我很困惑,因为如果我在一个测试 hello world 应用程序中实例化我的类,它就可以正常工作。
实例化类的位置是否有限制?我以前写过的课程都没有遇到过。在这种情况下,我在侦听器中实例化我的 CurrentLocation 类(因此用户只在需要时才进行冗长的 gps 和 web 调用)。我也尝试在屏幕中实例化它。我已经尝试过删除类并使用方法调用,但这也不起作用。
我在这里完全缺少什么吗?
有一个链接到我正在制作的课程,
这是我试图实例化的监听器。我在一个事件线程中,因为我认为它可能会有所帮助(但无论我是否这样做,我都会遇到同样的异常)。
FieldChangeListener listenerGPS = new FieldChangeListener() {
public void fieldChanged(Field field, int context) {
UiApplication.getUiApplication().invokeLater(new Runnable() {
public void run() {
CurrentLocation loc = new CurrentLocation();
if (loc != null){
country = loc.getCountry();
city = loc.getCity();
state = loc.getState();
road = loc.getRoad();
zip = loc.getZip();
}
}
});
}
};
我在这里想念什么?