`
izuoyan
  • 浏览: 9221208 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Windows Mobile 6 SDK 中的 GPS 工具

阅读更多

GPS Intermediate Driver

自从 Windows Mobile 5.0 引进了 GPS Intermediate Driver(GPS 中间驱动程序,以下简称 GPSID),开发基于 GPS(Global Positioning System,全球定位系统)的 Windows Mobile 应用程序变得简单多了。原因是它在开发人员编写的应用程序和 GPS 设备之间加入了一个中间层,使开发人员不需要通过串口直接访问 GPS 设备,而是访问 GPSID 提供的 API 函数,GPSID 再去访问 GPS 设备。这样一来,编写出来的 GPS 应用程序具有设备无关性。另外,GPSID 还有下面两个好处:
1. 多个应用程序可以同时访问同一个 GPS 设备,因为你访问的是 GPSID
2. 不需要去解析 NMEA 命令,GPSID 帮你解析好了

关于 GPSID 的详细介绍请参阅 GPS Intermediate Driver Reference,还可以观看张汝颇的 Windows Mobile 轻松接轨GPSWebcast,在本文不会展开讨论。

这次 Windows Mobile 6 SDK 提供的 Fake GPS 和 GPS Settings 这两个针对 GPSID 开发和使用的辅助工具,基于 .NET Compact Framework 1.0 编写,所以适用于 Windows Mobile 5.0。在 C:\Program Files\Windows Mobile 6 SDK\Tools\GPS 目录下可以找到这两个小工具。

Fake GPS

如果你想开发一个运行在 Windows Mobile 系统的GPS 应用程序,但是找不到 GPS 设备用来调试,或者你在室内调试程序,GPS 设备接收不到卫星信号,那 Fake GPS 正是你急需的工具了。

GPSID 的所有设置信息都保存在注册表中,可以通过修改注册表来更改 GPSID 的设置。其中有个一个设置,可以让 GPSID 从一个包含 NMEA 命令的 .txt 文件读取 GPS 数据,而不需要从 GPS 设备读取数据。这个在张汝颇的 Windows Mobile 轻松接轨GPS中也有介绍。Fake GPS 的工作原理就是修改注册表的 GPSID 设备,让 GPSID 从一个文本文件读取 GPS 数据。而对于我们开发的应用程序来说,跟访问真实的设备并没有两样。

在使用 Fake GPS 之前需要将它安装到你 Windows Mobile 设备上或者仿真器上,安装文件是 FakeGPS.CAB。这里我把 Fake GPS 安装到 Windows Mobile 6 Standard 的仿真器里。安装成功后在开始菜单中找到它并运行。

Fake GPS 的设置默认没有生效,我们可以在第一个输入框把它的状态改为 Enabled,现在可以在第二个输入框中选择从哪个文件读取 GPS 数据。Fake GPS 默认带了两个测试文件,fakegpsdata.txt 在打开后会让 GPSID 马上接收到位置信息,而 dixies.txt 需要等待一段时间才能接收到位置信息。



如果你想使用自己的测试数据,可以将编写好的 .txt 文件复制到 \Program Files\FakeGPS\GPSFiles 目录下,在重新运行 Fake GPS 就可以在 NMEA File 列表中看到了。



下面有一段 NMEA 数据可供测试:
$GPGLL,4738.0173,N,12211.1874,W,191934.767,A*21
$GPGSA,A,3,08,27,10,28,13,19,,,,,,,2.6,1.4,2.3*3E
$GPGSV,3,1,9,8,71,307,43,27,78,59,41,3,21,47,0,10,26,283,40*77
$GPGSV,3,2,9,29,13,317,0,28,37,226,37,13,32,155,36,19,37,79,42*42
$GPGSV,3,3,9,134,0,0,0*46
$GPRMC,191934.767,A,4738.0173,N,12211.1874,W,0.109623,12.14,291004,,*21
$GPGGA,191935.767,4738.0172,N,12211.1874,W,1,06,1.4,32.9,M,-17.2,M,0.0,0000*75
$GPGLL,4738.0172,N,12211.1874,W,191935.767,A*21
$GPGSA,A,3,08,27,10,28,13,19,,,,,,,2.6,1.4,2.3*3E
$GPRMC,191935.767,A,4738.0172,N,12211.1874,W,0.081611,15.81,291004,,*2A


这里我选择了fakegpsdata.txt 作为测试数据。点击 done 按钮保存设置并关闭 Fake GPS。然后运行我前段时间编写的一个坐标采集工具 Smart GPS Tracker,它是基于 Windows Mobile 5.0 GPSID 编写的,效果如下:



到此为止,我没有用到一台真实的设备。Fake GPS 适用于 Pocket PC 和 Smartphone 两种操作系统,它会自适应。

GPS Settings

在 Windows Mobile 5.0 和 Windows Mobile 6 的 Pocket PC 版操作系统中自带了一个 GPSID 的配置程序,在 Windows Mobile 6 Professional 中可以通过选择“Start-->Settings-->System-->External GPS”打开。



而 Smartphone 版的操作系统中并没有自带类似的 GPSID 配置程序,这为开发 Smartphone 上的 GPS 应用程序带了一些不便。我是自己写了一个,其实也不难,就是读/写几个注册表的键值。

Windows Mobile 6 SDK 中提供了一个叫 GPS Settings 的工具,用于在 Smartphone 的操作系统配置 GPSID,功能跟 Pocket PC 上的一样。在 C:\Program Files\Windows Mobile 6 SDK\Tools\GPS 目录下找到 Settings.exe,并将它复制到 Smartphone 上运行。



关于 GPSID 如何设置,这里不展开了,如果你感兴趣可以看我上面推荐的学习资料

总结

GPS Intermediate Driver 为我们开发 GPS 应用程序带来了很多好处,而 Windows Mobile 6 SDK 中提供的 Fake GPS 和 GPS Settings 这两个小工具,弥补了 Windows Mobile 5.0 SDK 中的空缺,使得开发基于 GPSID 的应用程序更加方便。如果你对这两个工具的工作原理感兴趣,可以自己用 Reflector 打开它们的程序集,好好研究一番,不明白的地方可以查 SDK 的帮助。另外,Windows Mobile 6 SDK 自带了一个 GPSID 示例的完整项目代码,对于理解 GPSID 的工作原理很有帮助,并且它的代码具有很高的重用价值,在 D:\Program Files\Windows Mobile 6 SDK\Samples\PocketPC\CS\GPS 目录下可以找到这个示例。

参考:
What's New for Developers in Windows Mobile 6
GPS Intermediate Driver Reference

原文地址:http://www.cnblogs.com/upto/archive/2007/02/15/gps-tools-in-wm6sdk.html

分享到:
评论

相关推荐

    Windows Mobile6.5 SDK自带的gps源码

    - **Microsoft.WindowsMobile.Samples.Location.csproj**:这是项目文件,包含了源码的编译配置信息,指示如何构建和组织源码。 - **Gps.sln** 和 **Gps.suo**:这两个文件是Visual Studio解决方案文件和用户选项...

    gps.rar_GPS 模擬器_gps mobile_mobile sdk_window mobile gps_windows

    6. **移动设备上的位置服务**:讨论Windows Mobile 6中位置服务的架构,以及如何与其他系统服务(如地图、导航等)集成。 7. **最佳实践和注意事项**:提供开发GPS应用时的建议和技巧,如优化电池使用、处理网络...

    windows mobile sdk范例

    Windows Mobile SDK(软件开发工具包)是微软为开发者提供的一个平台,用于构建针对Windows Mobile操作系统设备的应用程序。这个SDK包含了各种必要的工具、库、文档和示例代码,以帮助开发者理解如何有效地利用...

    Samsung 三星WindowsMobile手机最新SDK

    Samsung Windows Mobile SDK(软件开发工具包)是为开发者设计的,旨在帮助他们创建适用于Samsung Windows Mobile设备的应用程序。这个SDK提供了必要的工具、库和文档,使得开发者能够充分利用三星智能手机的功能,...

    Windows Mobile 6下的gps开发实例

    首先,我们需要了解Windows Mobile 6中的位置服务API。这是系统提供的一套接口,用于获取GPS数据,包括经纬度、速度、高度、方向等。这些接口包括但不限于IGpsPosition接口,通过这个接口,开发者可以获取到实时的...

    GPS.zip_GPS_gps windows mobile

    对于开发GPS相关应用的程序员,理解如何在Windows Mobile SDK 6中集成GPS功能至关重要。这涉及到以下几个关键知识点: 1. **Windows Mobile SDK 6 API**:了解SDK提供的API,如CoreCon(核心控制)和Location API,...

    Windows Mobile GPS应用开发指南(Video)

    开发过程中,Windows Mobile SDK包含的模拟器可以帮助开发者初步测试GPS应用,但最终的性能和准确性测试应在真实设备上进行。 9. **安全和隐私** 开发GPS应用时,必须遵守隐私政策,获取用户的明确同意才能收集...

    Windows Mobile GPS应用开发指南

    文档进一步讨论了Windows Mobile 6 SDK在GPS应用开发中的角色。SDK提供了必要的API和工具,使开发者能够访问设备的GPS硬件,捕获位置数据并集成到应用程序中。这包括了位置更新、速度测量、航向确定等功能,从而增强...

    Windows Mobile 6开发的配置

    4. **Windows Mobile 6.0 Professional SDK**:这个SDK提供了开发Windows Mobile 6 Professional应用所需的所有工具、库和文档。它包括模拟器,让你能在没有实际设备的情况下进行测试。 5. **Windows Mobile 6 ...

    Windows Mobile 6 为开发人员带来的新特性

    除了开发过程中的工具外,Windows Mobile 6 还引入了一些新的内置程序来简化应用程序的部署: - **自动安装程序**:允许用户通过简单的步骤完成应用的安装。 - **更新管理工具**:帮助用户轻松地更新已安装的应用...

    windows mobile 轻松接轨gps

    - **安装必要的SDK**:确保安装了 Windows Mobile SDK 和相关的开发工具。 #### 设计界面 - **定义UI元素**:例如文本框显示坐标,按钮控制GPS服务的开启与关闭。 - **实现布局**:使用XAML或C#来创建简洁直观的...

    windows mobile 6 pdf资料

    开发Windows Mobile 6应用通常使用Visual Studio,结合Windows Mobile SDK,可以创建.NET Compact Framework或C++应用程序。.NET Compact Framework是针对移动设备的轻量级版本,提供了类库支持,简化了开发过程。 ...

    Windows Mobile

    系统提供了Windows Mobile Core SDK和Windows CE .NET SDK,它们包含了与GPS相关的接口和类库。例如,开发者可以使用Location API来获取GPS的实时数据,如经度、纬度、高度、速度和方向等。此外,还需要熟悉如何处理...

    Windows Mobile 手机应用开发

    6. **设备特性和API**:了解Windows Mobile设备的硬件特性,如触摸屏、键盘、GPS、蓝牙等,并熟悉相应的API调用,是开发高效应用的关键。 7. **性能优化**:由于移动设备的资源有限,开发者需要关注内存管理、CPU...

    Windows Mobile 5.0 三十几个经典手机软件开发源码

    3. **API和库**:Windows Mobile SDK提供了许多API,如.NET Compact Framework,用于创建图形用户界面和访问设备功能。此外,还有Pocket Outlook Object Model (POOM) 和 ActiveSync API,可以用于同步数据到桌面...

    Windows Mobile HTMLayoutMobileSDK

    【Windows Mobile HTMLayoutMobileSDK】是一个专为Windows Mobile平台设计的HTML布局渲染引擎的SDK(软件开发工具包)。这个SDK允许开发者在Windows Mobile设备上创建高性能、具有丰富图形和交互性的用户界面,利用...

    Windows Mobile应用程序开发介绍

    开发者还需要Windows Mobile SDK,它包含了开发所需的各种库、工具和文档。ActiveSync则是连接开发机和目标设备进行调试的关键组件。 4. **开发技术和资源** 开发Windows Mobile应用,开发者可以选择多种编程语言...

Global site tag (gtag.js) - Google Analytics