我正在使用URLConnection从Android应用程序下载html文件。但我想要基于设备区域设置的HTML内容。
假设用户从德语语言环境发送请求,则响应应使用德语。我期望URLConnection应该根据device-locale发送accept-language,类似于ajax调用。但URLConnection发出的请求中不存在accept-language标头。
我是否需要明确设置请求标头或有其他选择吗?
提前致谢。
答案 0 :(得分:3)
您可以使用以下任何方式获取格式的设备区域设置语言 -
Locale.getDefault().getLanguage() ---> en
Locale.getDefault().getISO3Language() ---> eng
Locale.getDefault().getCountry() ---> US
Locale.getDefault().getISO3Country() ---> USA
Locale.getDefault().getDisplayCountry() ---> United States
Locale.getDefault().getDisplayName() ---> English (United States)
Locale.getDefault().toString() ---> en_US
Locale.getDefault().getDisplayLanguage()---> English
来源 - Refer here
您可以在请求中提供Accept-Language标头,例如 -
URL url = new URL("website url");
URLConnection urlconnection = url.openConnection();
urlconnection.setRequestProperty("Accept-Language", "en-GB");