Geocoder的英语而不是本地语言

Dim*_*Dim 5 android google-maps google-geocoder

我正在使用Geocoder从lan/lat坐标获取地址.问题是地址是用当地语言(通常是街道名称).如何将其设置为仅使用英语?

我在用:

Geocoder geocoder = new Geocoder(Context, Locale.getDefault());
Run Code Online (Sandbox Code Playgroud)

尝试:

Geocoder geocoder = new Geocoder(Context, Locale.ENGLISH);
Geocoder geocoder = new Geocoder(Context, Locale.US);
Run Code Online (Sandbox Code Playgroud)

没有运气.

Joh*_*ohn 2

API 19
\n我认为答案并不完全正确。
\n我刚刚遇到过这种情况,当我将 GeoCoder 区域设置设置为英语时,我得到了错误的街道名称。
\n它不会翻译它们,但它删除了特定于语言的部分,这是我关心的问题。

\n\n

例如,“Stra\xc3\x9fe”变成了“St”。

\n\n

Google Maps HTTP Geocoder API 在这方面有所不同,当我设置英语时,街道会正确返回,只是测试的国家/地区被翻译(奥地利而不是 \xc3\x96sterreich)。

\n\n

由于许多人使用 HTTP API 作为后备,以防地理编码器失败,这可能是一个问题,就像我的情况一样。
\n我的解决方案是始终使用两个 API 的国家/地区区域设置,然后结果匹配。
\nHTTP API 有一个 &language 参数,它将 Local.toString() 理解为值;
\n地理编码器可以像显示的原始问题一样初始化。

\n