为了测试基于 GPS 的 J2ME 应用程序,是不是有任何内置 GPS 的模拟器?
Posted
技术标签:
【中文标题】为了测试基于 GPS 的 J2ME 应用程序,是不是有任何内置 GPS 的模拟器?【英文标题】:For testing GPS based J2ME app, Is there any emulator which have built in GPS?为了测试基于 GPS 的 J2ME 应用程序,是否有任何内置 GPS 的模拟器? 【发布时间】:2013-01-19 05:23:48 【问题描述】:我是 J2ME 应用程序开发领域的新手。我正在使用诺基亚地图为 40 系列手机开发基于 GPS 的应用程序。我想要这样的模拟器,它提供 GPS(检索和设置当前坐标和许多其他目的)。我在谷歌上搜索了很多,但我没有找到这样的模拟器......即使是诺基亚 SDK 提供的模拟器;他们也没有GPS功能......那我应该如何获得这样的模拟器?
【问题讨论】:
你试过三星或索尼的 SDK 吗? 还没有……他们有没有内置 GPS 功能……如果有的话,我从哪里下载这些 SDK?? 【参考方案1】:您可以在此处下载最新的诺基亚 IDE(包括诺基亚地图插件): Emulator download
与 SDK 关联的模拟器包括用于模拟 JSR-179 位置调用的工具(例如 Cell-Id/GPS),您可以播放已保存文件的坐标并定期接收它们。查看模拟器的 Tools > Route Editor 菜单。
这里的混淆是 GPS 定位和 Cell-Id 定位之间的区别。目前没有带 GPS 单元的 40 系列手机(据我所知) - 因此需要通过 Cell-ID 进行定位 - 在这种情况下,在 Cell-ID 场景中检索频繁位置更新的唯一方法是调用重复循环中的getLocation()
方法。通过locationUpdated()
方法检索位置对象,只能在基于 GPS 的位置检索中完成。
总之,您可以从任何支持 JSR-179 的 Java ME 手机获取位置,但您不会使用 GPS。
要获取位置,请使用以下命令:
cellIdLocator = getCellIdProvider();
cellIdLocator.getLocation(DEFAULT_TIMEOUT);
cell-id 提供者可以保存在单例中
private LocationProvider cellIdLocator;
public LocationProvider getCellIdProvider() throws LocationException
if (cellIdLocator == null)
int[] methods =
Location.MTA_ASSISTED | Location.MTE_CELLID
| Location.MTY_NETWORKBASED;
cellIdLocator = LocationUtil.getLocationProvider(methods, null);
return cellIdLocator;
【讨论】:
但是我在某处读到 CellID 总是不能给你正确的位置....这是真的吗??? Cell-ID 可以为您提供高达 100m 的精度(城市地区)它在农村地区不太准确,请参阅:-developer.nokia.com/Community/Wiki/… 和 cens.ucla.edu/~mhr/cs219/location/trevisani04.pdf - 这是 2004 年的案例研究,准确性从那以后可能会有所改善。除此之外,您别无选择 - 如果手机没有 GPS 装置,您将不得不使用 Cell-ID以上是关于为了测试基于 GPS 的 J2ME 应用程序,是不是有任何内置 GPS 的模拟器?的主要内容,如果未能解决你的问题,请参考以下文章