在Android IOT设备上访问位置

时间:2017-06-07 07:06:15

标签: android iot android-location android-5.1.1-lollipop

我在Rockchip RK3288上安装了运行Android 5.1.1的Android IoT设备,顾名思义可以连接到WiFi网络,但没有GPS或蜂窝模块。每当我尝试访问位置并找到最佳位置提供商时,它总是将我作为“被动”来回复。提供者,因此我无法获得我当前的位置。

Criteria criteria = new Criteria();
provider = locationManager.getBestProvider(criteria, false);

我有点困惑的是,该设备具有有效的网络连接,但NETWORK_PROVIDER不可用。

1 个答案:

答案 0 :(得分:1)

  

试用Google Geolocation API。

Google Geolocation API也使用 wifiAccessPoints cellTowers 。正如您所说设备没有GPS和蜂窝模块,您需要使用WifiAccessPoints。

对于WifiAccessPoints,您需要传递所有最近的WiFi连接数据。对于E.g在android中点击WIFI时它会显示你附近的wifi列表。因此,您需要将所有wifi列表传递给WifiAccessPoints,以便返回设备的位置。

您可以传递参数“ConsideIp”:“true”,因此使用您的IP地址可获取设备的当前位置。

对于我的意见,请使用通过IP地址获取当前位置,该位置返回当前位置的最高准确率。Google Maps Geolocation API文档也说明了这一点。

有关详细信息,请参阅Google Geolocation API,其中还提供了示例数据,以便您可以从此处查看结果。

我希望这会给你一些提示或者想要实现你想要实现的目标。