android - Geocoder 不适用于某些 Android 手机

标签 android google-maps geocoding rails-geocoder

我正在开发 Android 应用程序,它允许用户输入地址并转换为纬度和经度以供进一步使用。我正在使用以下代码获取纬度和经度

          addresses = geocoder.getFromLocationName("11381 zapata ave san diego", 1);

        if (addresses.size() > 0) {
            double latitude = addresses.get(0).getLatitude();
            double longitude = addresses.get(0).getLongitude();

            addGeoFence(latitude, longitude);
            tlFragmentMap.setLatLong(new LatLng(latitude, longitude));
            return true;
        } else {
            return false;
        }

此地理编码器仅在部分手机上运行良好。任何人都可以建议我一种使其适用于所有手机的方法。我不想使用任何 API。我的编译SDK版本是22,minSdkVERsion是14,targetSdkVersion是22

最佳答案

使用 Geocoder 的 isPresent() 方法来确定它是否存在于当前设备上(该服务不存在于核心框架中)。

更多信息可以在 official documentation 中找到

作为备用(或可能是唯一的,因为它保证在所有设备上工作)解决方案,可以使用谷歌的 Geocoding rest API

关于android - Geocoder 不适用于某些 Android 手机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31146775/

相关文章:

java - 我们如何在Android应用程序中创建Kafka生产者?

Android Paint : . measureText() 与 .getTextBounds()

android - 如何在小部件android中更改图像的背景颜色

c# - 在 C# 中样式化 KML 文件

java - 如何将当前位置与地址列表进行比较并得出 5 英里/10 英里/20 英里内的附近地址?

javascript - 如何在没有收到 OVER_QUERY_LIMIT 响应的情况下对 20 个地址进行地理编码?

android - 将 fragment 实例保留在 FragmentPagerAdapter 中

javascript - Google map 距离矩阵 API 舍入 JS API v3

javascript - 将纬度、经度转换为 iframe 链接

jquery - Google Maps API v3 对企业名称进行地理编码