Launcher8.0启动流程的第六步在workspace图标显示完成就开始准备allapp的显示。因为allapp需要点击或滑动allappButton才能打开,所以显示在workspace之后。Loadallapp是从系统获取所有的应用,然后将其显示到allapp里面。
private void loadAllApps() {
//仍然回调Launcher的方法,所以先获取Launcher的对象。
final Callbacks oldCallbacks = mCallbacks.get();
final List<UserHandle> profiles = mUserManager.getUserProfiles();
//从系统获取activity列表,getActivityList最终使用的是系统方法
ServiceManager.getService(Context.LAUNCHER_APPS_SERVICE)
.getLauncherActivities(mContext.getPackageName(),
packageName, user), user),在getActivityList传入的两个参数是packagename和user,用于筛选手机中的应用,这里packagename为空,传入当前的user则最终获取整个手机在当前user