Windows Phone - 使用GeocodeQuery进行离线/位置关闭搜索

时间:2014-01-02 13:28:11

标签: search windows-phone-8 geolocation

我正在开发一个Windows手机应用程序,我想提供对指定位置的搜索并在Map控件上找到它。我正在使用GeocodeQuery搜索搜索词:

private void SearchForTerm(String searchTerm)
{
    myGeocodeQuery = new GeocodeQuery();
    myGeocodeQuery.SearchTerm = searchTerm;
    myGeocodeQuery.GeoCoordinate = new GeoCoordinate(0, 0);
    myGeocodeQuery.QueryCompleted += GeocodeQuery_QueryCompleted;
    myGeocodeQuery.QueryAsync();
}

问题是,此代码仅适用于位置服务或wifi打开。只有位置和wifi关闭我不能搜索每个地方,即使我在我的地图上有它,但没有下载详细的地图。

例如,我可以放大到意大利,我可以看到罗马,而不是详细的街道,但城市的名称是可见的。当我搜索“罗马”时,我会得到0个结果。

这看起来离线时位置服务功能不可用,即使手机中有地图也是如此。我没有找到任何详细解释此功能的教程或示例。对于诺基亚开发人员的this示例,我遇到了同样的问题。

1 个答案:

答案 0 :(得分:0)

Windows手机从三个来源收集位置数据

  1. 位置服务
  2. 网络(数据)
  3. 三种来源中的累积可以得到最好的结果。显然,您可以单独从位置服务获取数据,但是与数据电话聚合的位置服务的数据来自wifi或SIM位置应该是最准确的位置。

    只需阅读this一次。

    也可以使用

    myGeolocator.DesiredAccuracyInMeters = value;
    

    更准确