Google会自动填充返回已翻译的结果

时间:2014-07-08 11:56:11

标签: android google-places-api stringbuilder

我正在使用google地方自动填充文字,直到昨天这一切都很顺利。 从今天开始,谷歌的地方用英语返回的结果很少,即使它是希伯来语。

StringBuilder sb = new StringBuilder(PLACES_API_BASE + TYPE_AUTOCOMPLETE + OUT_JSON);
            sb.append("?key=" + API_KEY);
            sb.append("&components=country:il");
            sb.append("&input=" + URLEncoder.encode(input, "utf8"));
            sb.append("&types=(cities)&language=il");
            URL url = new URL(sb.toString());
            conn = (HttpURLConnection) url.openConnection();
            InputStreamReader in = new InputStreamReader(conn.getInputStream());

            // Load the results into a StringBuilder
            int read;
            char[] buff = new char[1024];
            while ((read = in.read(buff)) != -1) {
                jsonResults.append(buff, 0, read);
            }

在调试时,我可以获得用于获取结果的url,当我检查预测时(通过浏览器)它看起来都很好,并且所有匹配都是希伯来语。

一旦jsonResults获得匹配,在某些情况下,第一个结果是英语,其余的是希伯来语。

例如我用希伯来语“יר”写了两个字母,网址匹配返回第一个地方“ירושלים”(耶路撒冷),但当它到达jsonResults时,第一个结果变成“耶路撒冷,以色列”这是与原始第一个结果不同的语言。

1 个答案:

答案 0 :(得分:1)

问题在于谷歌将希伯来语的定义从il改为 iw

所以它应该是:

sb.append("&types=(cities)&language=iw");

支持的语言列表:Google list