为Windows Mobile设备创建位置感知的应用程序
2011-01-06 10:59:01 来源:WEB开发网如以下代码所示,在在应用程序内部获取位置信息是非常简单的。
private LatLong location;
ILocationProvider locationProvider;
private void MainForm_Load(object sender, EventArgs e)
{
if (locationProvider == null && SystemState.PhoneRadioPresent)
{
locationProvider = LocationProvider.GetLocationProvider(
LocationProvider.LocationType.CellTower);
location = locationProvider.CurrentLocation;
ShowLocation(location.Latitude, location.Longitude);
}
}
private void menuLocation_Click(object sender, EventArgs e)
{
location = locationProvider.CurrentLocation;
ShowLocation(location.Latitude, location.Longitude);
}
private void menuSettings_Click(object sender, EventArgs e)
{
if (Settings.GetInstance().ShowDialog() == DialogResult.OK)
{
locationProvider = LocationProvider.GetLocationProvider(
Settings.UseGPS ? LocationProvider.LocationType.GPS :
LocationProvider.LocationType.CellTower);
location = locationProvider.CurrentLocation;
}
}
展示如何通过调用一些Web服务 使用你的当前位置信息已经超出了本文的探讨范围。然而,只要当你的WIndows Mobiel设备上的位置信息可用之后,你就可以通过多种途径获取位置感知的数据,并且可以把你的位置数据发布到各种社交网络上。当然你也可以使用 Microsoft SQL Server® Compact Edition数据库连续存储你的位置信息以实现不同的目的。还有一种有前途的技术(通过IP检索获取位置)在本文中没有介绍。
总结
在Windows Mobile设备上取得位置信息是非常简单的。这篇文章探讨了如何通过不同的方法获取你的位置信息:
蜂窝基站检索,快速,不消耗过多电量,但是不完全精确
GPS检索,可能花费一些初始化时间(有时长达几分钟),消耗额外的电量,但是非常精确
为你的应用程序添加位置感知并呼叫你当前位置的Web服务,不仅为在线商务应用程序,也为其他多种消费者应用程序开启了很多可能。你可以使用本文介绍的技术开发一些位置感知的应用程序。通过可以IP检索来获取当前的位置的方法就留给读者来扩展了,这种方法可以返回很精确的结果,尤其在可用Wi-Fi
更多精彩
赞助商链接