开发学院手机开发Windows Mobile 开发 为Windows Mobile设备创建位置感知的应用程序 阅读

为Windows Mobile设备创建位置感知的应用程序

 2011-01-06 10:59:01 来源:WEB开发网   
核心提示: 首页完成改版,来提意见下面的代码示范了如何在应用程序转到后台时节省电池电量,为Windows Mobile设备创建位置感知的应用程序(5),private void MainForm_Activated(object sender, EventArgs e){if (menuLocationUpdates.Chec
首页完成改版,来提意见

下面的代码示范了如何在应用程序转到后台时节省电池电量。

private void MainForm_Activated(object sender, EventArgs e)

{

if (menuLocationUpdates.Checked)

{

gps.LocationChanged += new

LocationChangedEventHandler(gps_LocationChanged);

}

}

private void MainForm_Deactivate(object sender, EventArgs e)

{

if (menuLocationUpdates.Checked)

{

gps.LocationChanged -= gps_LocationChanged;

}

}

尽管你可以通过GPSID轻易得取得你的当前位置,并且卫星返回的位置非常精确,然而使用GPSID却未必是获取位置信息最高效的方法。从开始到第一个位置信息被返回给设备可能花费很长时间。依赖于物理硬件设备,你的当前位置,卫星的可见性,以及最后一次通过GPSID的位置读取,取得位置信息可能会花费几分钟的时间。如果你不需要达到GPS传输的精确度,但同事又需要更快的定位速度,可以考虑以下的选择。

通过蜂窝基站检索位置信息

大部分的Windows Mobile设备当然都是手机。依赖于你所使用的移动运营商,你的手机可以以编程方式取得蜂窝基站的信息。信息中包含一个蜂窝基站代码、一个地区代码和一个国家代码。根据这些信息,你可以取得你的手机当前连接的蜂窝基站的位置,从而为你提供不同精确度的位置信息。通过蜂窝基站检索位置的优势在于可以不使用额外电量而快速得取得你的当前位置。其缺点是假如你不使用蜂窝基站三角测量法的话,精确度是不确定的。另一个缺点是你必须创建额外的代码来获取位置。蜂窝基站信息的获取可以通过Windows Mobile设备中的无线接口层(RIL)来实现。然而,仅仅有蜂窝基站代码、国家代码及移动运营商的信息是不够的。所有这些信息都必须最终转化为位置。你可以把取得的蜂窝基站信息传递给第三方Web服务。

在Windows Mobile设备中访问蜂窝基站信息

为了在你的应用程序中取得蜂窝基站信息,你必须要访问设备的无线接口层(RIL)。OEM RIL的推荐设置禁止不受信任的应用程序访问RIL功能。因此,你必须用一个有效的证书为你的应用程序签名,或者在你的应用程序内部限制对TIL功能的访问。为了取得为蜂窝基站信息,你主要要调用一个独立的RIL函数。但是,你必须调用其他的函数作为RIL的处理程序,并且必须在结束使用RIL功能时清楚这些处理程序。

上一页  1 2 3 4 5 6 7 8 9 10  下一页

Tags:Windows Mobile 设备

编辑录入:爽爽 [复制链接] [打 印]
[]
  • 好
  • 好的评价 如果觉得好,就请您
      0%(0)
  • 差
  • 差的评价 如果觉得差,就请您
      0%(0)
赞助商链接