如何使用 google 地图而不是位置地址从我的位置获取道路名称

How to get road name from my location using google map not the location address

我想在google地图上使用当前位置开车时获取道路名称,我搜索了更多相关信息,但找不到解决方案。 我正在使用地理编码器获取我的位置名称,但它 return 位置地址而不是我开车经过的道路。 即,以 goecoder return 地址行为例(5-街道、地区、国家) 当我在路上行驶 10 米时,地址变为(6-街道、地区、国家) 但我只想要长路名,比如(街道 5) 我尝试使用地理编码器中的任何键的用户功能名称,但它 return 地址像(5-街道 5) 请问有人可以帮帮我吗?

当您从地理编码器获取地址行时,您可以使用 getThoroughfare 调用获取字符串,这将为您获取街道地址,例如“1600 Ampitheater Parkway”,然后,您可以调用使用 getSubThoroughfare 获取字符串,如果不为空,则可能 return Thoroughfare 的地址部分,例如上面发布的示例中的“1600”。然后,您可以对 Thoroughfare 字符串进行字符串替换,将 Sub-Thoroughfare 替换为 "" 以去除数字。

你可以使用我正在使用的这段代码

   public String ReverseGeocodingStreet(Double lat,Double lng){
    String street= "";
    if(gc.isPresent()){
        List<Address> list = null;
        try {
            list = gc.getFromLocation(lat, lng,1);
        } catch (IOException e) {
            e.printStackTrace();
        }
        Address address = list.get(0);
        StringBuffer str = new StringBuffer();
        street = address.getThoroughfare();
    }
    return  street;
}