【问题标题】:Geofencing in AndroidAndroid中的地理围栏
【发布时间】:2014-06-13 22:49:23
【问题描述】:

我从 Web 服务获取 kmz 文件,用于地理围栏。 该应用负责检查手机的gps位置是否在地理围栏内。

我真的不知道 kmz 文件的结构(我没有创建它),但我认为坐标可能如下所示:

<coordinates> 
    -112.2550785337791,36.07954952145647,2357
    -112.2549277039738,36.08117083492122,2357
    -112.2552505069063,36.08260761307279,2357
    -112.2564540158376,36.08395660588506,2357
    -112.2644963846444,36.08627897945274,2357
    -112.2656969554589,36.08649599090644,2357 
</coordinates>

如何检查我手机的 gps 坐标是否在地理围栏内(上面的示例只是一条线,它应该是一个封闭区域,例如一个矩形)?现在我真的想不出该怎么做。

应该使用什么库来访问 kmz 文件?

【问题讨论】:

    标签: android geofencing kmz android-geofence


    【解决方案1】:

    首先,对于地理围栏,从here 下载示例并阅读文档。而且我不知道 kmz 文件。但是,如果您可以从中获取字符串(使用文件读取)并知道其结构,那么您可以轻松解析它。如果格式像你提到的,那么你可以通过以下方法获取值:

    • 在坐标上分割字符串(包括)。你会得到一个字符串数组。取索引 1 处的字符串。

    • 在 /coordinates 上分割这个字符串(包括 )。你会得到另一个字符串数组。取索引 0 处的字符串。

    • 现在将此字符串拆分为“,”。你会再次得到一个字符串数组!现在索引 0,3,6... 是纬度,索引 1,4,7... 是经度,索引 2,5,8... 是您提到的数据中的第三个数字。

    【讨论】:

      猜你喜欢
      • 2015-11-07
      • 1970-01-01
      • 2013-06-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多