LauncherModel.Callbacks介面
阿新 • • 發佈:2019-01-01
public interface Callbacks {
//如果Launcher在載入完成之前被強制暫停,那麼需要通過這個回撥方法通知
//launcher,在它再次顯示的時候重新執行載入過程
public boolean setLoadOnResume();
//獲取當前使用者所在的桌面頁索引
public int getCurrentWorkspaceScreen();
//啟動桌面元件繫結
public void startBinding();
/**
* 批量繫結桌面元件
* @param shortcuts 需要繫結的快捷方式列表
* @param start 列表的開始位置
* @param end 列表的結束位置
* @param forceAnimateIcons 是否使用動畫
*/
public void bindItems(ArrayList<ItemInfo> shortcuts, int start, int end,
boolean forceAnimateIcons);
/**
* 批量繫結桌面頁
* @param orderedScreenIds 序列化後的桌面頁列表
*/
public void bindScreens(ArrayList<Long> orderedScreenIds);
//同上
public void bindAddScreens(ArrayList<Long> orderedScreenIds);
/**
* 批量繫結資料夾
* @param folders 資料夾對映列表
*/
public void bindFolders (LongArrayMap<FolderInfo> folders);
//繫結任務完成
public void finishBindingItems();
/**
* 往桌面上繫結小部件
* @param info 需要繫結到桌面上的小部件資訊
*/
public void bindAppWidget(LauncherAppWidgetInfo info);
/**
* 繫結應用程式列表介面的應用程式資訊
* @param apps 需要繫結到應用程式列表中的應用程式列表
*/
public void bindAllApplications(ArrayList<AppInfo> apps);
/**
* 批量新增元件
* @param newScreens 新增的桌面頁列表
* @param addNotAnimated 無需動畫新增元件
* @param addAnimated 動畫方式新增元件
* @param addedApps 新增所有應用程式選單
*/
public void bindAppsAdded(ArrayList<Long> newScreens,
ArrayList<ItemInfo> addNotAnimated,
ArrayList<ItemInfo> addAnimated,
ArrayList<AppInfo> addedApps);
/**
* 批量更新應用程式相關的快捷方式或者入口
* @param apps 已經更新的應用程式資訊
*/
public void bindAppsUpdated(ArrayList<AppInfo> apps);
/**
* 從桌面移除一些元件,當應用程式被移除或者禁用的時候呼叫
* @param packageNames 以包名指定的應用程式資訊列表
* @param appInfos 以應用程式資訊指定的應用程式資訊列表
* @param user 當前使用者資訊
* @param reason
*/
public void bindComponentsRemoved(ArrayList<String> packageNames,
ArrayList<AppInfo> appInfos, UserHandleCompat user);
public void bindAllPackages(WidgetsModel model);
//全域性搜尋或者搜尋屬性更新
public void bindSearchProviderChanged();
/**
*
* @param rank 輸入範圍
* @return 是否為應用程式選單
*/
public boolean isAllAppsButtonRank(int rank);
/**
* 指示正在繫結的頁面
* @param page 桌面頁序號
*/
public void onPageBoundSynchronously(int page);
//輸出當前Launcher資訊到本地檔案中
public void dumpLogsToLocalData();
}