关于android源码之launcher解决思路
关于android源码之launcher
有谁研究过android源码里面的launcher?
帮忙一下checkForLocaleChange()这个方法是干吗用的?有人知道吗
------解决方案--------------------
检测区域设置是否改变吧
------解决方案--------------------
应该是读本地化设置,如果改变跟之前的不同,就把新的配置写回到配置文件:
243 private void checkForLocaleChange() {
244 final LocaleConfiguration localeConfiguration = new LocaleConfiguration();
245 readConfiguration(this, localeConfiguration);
246
247 final Configuration configuration = getResources().getConfiguration();
248
249 final String previousLocale = localeConfiguration.locale;
250 final String locale = configuration.locale.toString();
251
252 final int previousMcc = localeConfiguration.mcc;
253 final int mcc = configuration.mcc;
254
255 final int previousMnc = localeConfiguration.mnc;
256 final int mnc = configuration.mnc;
257
258 mLocaleChanged = !locale.equals(previousLocale) || mcc != previousMcc || mnc != previousMnc;
259
260 if (mLocaleChanged) {
261 localeConfiguration.locale = locale;
262 localeConfiguration.mcc = mcc;
263 localeConfiguration.mnc = mnc;
264
265 writeConfiguration(this, localeConfiguration);
266 }
267 }
有谁研究过android源码里面的launcher?
帮忙一下checkForLocaleChange()这个方法是干吗用的?有人知道吗
------解决方案--------------------
检测区域设置是否改变吧
------解决方案--------------------
应该是读本地化设置,如果改变跟之前的不同,就把新的配置写回到配置文件:
243 private void checkForLocaleChange() {
244 final LocaleConfiguration localeConfiguration = new LocaleConfiguration();
245 readConfiguration(this, localeConfiguration);
246
247 final Configuration configuration = getResources().getConfiguration();
248
249 final String previousLocale = localeConfiguration.locale;
250 final String locale = configuration.locale.toString();
251
252 final int previousMcc = localeConfiguration.mcc;
253 final int mcc = configuration.mcc;
254
255 final int previousMnc = localeConfiguration.mnc;
256 final int mnc = configuration.mnc;
257
258 mLocaleChanged = !locale.equals(previousLocale) || mcc != previousMcc || mnc != previousMnc;
259
260 if (mLocaleChanged) {
261 localeConfiguration.locale = locale;
262 localeConfiguration.mcc = mcc;
263 localeConfiguration.mnc = mnc;
264
265 writeConfiguration(this, localeConfiguration);
266 }
267 }