最近遇到一个问题,就是在4.4.2 的Launcher3中设置非默认壁纸后,进入Setting选择辅助设置勾选大字体后回到桌面,发现壁纸被拉伸。
通过测试发现设置壁纸时Launcher已经将壁纸的长宽保存在data/data/com.android.launcher3/shared_prefs的WallpaperCropActivity.xml中
当用户通过Launcher3设置Wallpaper时会通过WallpaperCropActivity的updateWallpaperDimensions方法将当前的wallpaper的长宽保存在上述sharedpreferences里面
protected void updateWallpaperDimensions(int width, int height) {
String spKey = getSharedPreferencesKey();
SharedPreferences sp = getSharedPreferences(spKey,Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sp.edit();
if (width != 0 && height != 0) {
editor.putInt(WALLPAPER_WIDTH_KEY,width);
editor.putInt(WAL