Geocoder geocoder = new Geocoder(this, Locale.US);
无论设备语言如何,上述代码都会返回英文地址。但在迪拜,上面的代码不起作用并返回阿拉伯语的地址。
如何使用地理编码器获取迪拜的英文地址?
如果您欺骗了传递给
Context
的 GeoCoder
怎么办?
例如,通过更改上下文区域设置,如以下 Kotlin 代码所示:
val configuration = Configuration(resources.configuration)
configuration.setLocale(Locale.ENGLISH)
val newContext = createConfigurationContext(configuration)
val geocoder = Geocoder(newContext, Locale.getDefault())
我没有尝试过,只是想到了一个想法。我的猜测是
GeoCoder
使用传递的 Context
来检测首选区域设置。