1. 程式人生 > >LauncherModel.Callbacks介面

LauncherModel.Callbacks介面

 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(); }