如何使用键入的语言获得Place Autocomplete的响应?

时间:2018-03-25 05:48:35

标签: java android google-maps autocomplete google-places-api

我使用Google Place Autocomplete返回地点预测..当我输入阿拉伯语时,结果显示为阿拉伯语

问题我选择后,我得到英语结果响应,这是我的移动语言,当我的移动语言是阿拉伯语时,我得到阿拉伯语的回复,似乎返回结果根据我的移动语言。

例如

我的移动语言是英语,我输入“القاهرة”,我从建议“القاهرة”中选择,结果是“开罗”,我希望结果是阿拉伯语,这是我输入的语言

我尝试设置本地语言,但它对我没有帮助..

这是我的代码

PlaceAutocompleteFragment autocompleteFragment = (PlaceAutocompleteFragment) getFragmentManager().findFragmentById(R.id.place_autocomplete_fragment);
    autocompleteFragment.setOnPlaceSelectedListener(new PlaceSelectionListener() {
        @Override
        public void onPlaceSelected(Place place) {

            AppSettings.setLang(getApplicationContext(),"ar");

            placeAddress = String.valueOf(place.getAddress());

        }
        @Override
        public void onError(Status status) {

        }
    });

这是设置本地语言的类

import android.content.Context;
import android.content.res.Configuration;
import android.preference.PreferenceManager;
import java.util.Locale;

public class AppSettings {
private static final String TAG = "APP_SETTINGS";

public static void setLang(Context context, String lang) {
    lang = lang.equalsIgnoreCase("ar") ? "ar" : "en";
    PreferenceManager.getDefaultSharedPreferences(context).edit().putString("txt", lang).apply();
    Configuration newConfig = new Configuration(context.getResources().getConfiguration());
    Locale locale = new Locale(lang);
    Locale.setDefault(locale);
    newConfig.locale = locale;
    newConfig.setLayoutDirection(locale);
    context.getResources().updateConfiguration(newConfig, null);
}

public static String getLang(Context context) {
    return PreferenceManager.getDefaultSharedPreferences(context).getString("txt", "ar");
}
}

如果我的移动语言是什么,如何以阿拉伯语永久输出?

0 个答案:

没有答案