Speed up the cache building of app info data
Trigger the background thread to cache the app icon and label description. It could reduce data loading times in UI thread to avoid the scrolling janky. Test: manual and robotests Fixes: 156527207 Change-Id: If171a450b51c7fd8c4ae19d8d149c944a17cf0e9
This commit is contained in:
@@ -60,6 +60,7 @@ import androidx.lifecycle.OnLifecycleEvent;
|
||||
import com.android.internal.R;
|
||||
import com.android.internal.util.ArrayUtils;
|
||||
import com.android.settingslib.Utils;
|
||||
import com.android.settingslib.utils.ThreadUtils;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
@@ -1588,6 +1589,15 @@ public class ApplicationsState {
|
||||
this.size = SIZE_UNKNOWN;
|
||||
this.sizeStale = true;
|
||||
ensureLabel(context);
|
||||
// Speed up the cache of the icon and label description if they haven't been created.
|
||||
ThreadUtils.postOnBackgroundThread(() -> {
|
||||
if (this.icon == null) {
|
||||
this.ensureIconLocked(context);
|
||||
}
|
||||
if (this.labelDescription == null) {
|
||||
this.ensureLabelDescriptionLocked(context);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public void ensureLabel(Context context) {
|
||||
|
||||
Reference in New Issue
Block a user