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();
}
LauncherModel.Callbacks接口的更多相关文章
- android M Launcher之LauncherModel (一)
众所周知 LauncherModel在Launcher中所占的位置,它相当于Launcher的数据中心,Launcher的桌面以及应用程序菜单中所需的数据像 桌面小部件的信息.快捷方式信息.文件信息. ...
- 【Android】Android 4.0 Launcher2源码分析——启动过程分析
Android的应用程序的入口定义在AndroidManifest.xml文件中可以找出:[html] <manifest xmlns:android="http://schemas. ...
- Android4.0 Launcher 源码分析2——Launcher内容加载绑定详细过程
Launcher在应用启动的时候,需要加载AppWidget,shortcut等内容项,通过调用LauncherModel.startLoader(),开始加载的工作.launcherModel中加载 ...
- 【转】Android 4.0 Launcher2源码分析——启动过程分析
Android的应用程序的入口定义在AndroidManifest.xml文件中可以找出:[html] <manifest xmlns:android="http://schemas. ...
- Fragment与Activity交互(使用接口)
在Fragment中: 1. // 定义一个回调接口,该Fragment所在Activity需要实现该接口// 该Fragment将通过该接口与它所在的Activity交互 { public void ...
- 【凯子哥带你学Framework】Activity启动过程全解析
It’s right time to learn Android’s Framework ! 前言 学习目标 写作方式 主要对象功能介绍 主要流程介绍 zygote是什么有什么作用 SystemSer ...
- 【Android】应用程序启动过程源码分析
在Android系统中,应用程序是由Activity组成的,因此,应用程序的启动过程实际上就是应用程序中的默认Activity的启动过程,本文将详细分析应用程序框架层的源代码,了解Android应用程 ...
- Android系统默认Home应用程序(Launcher)的启动过程源码分析
在前面一篇文章中,我们分析了Android系统在启动时安装应用程序的过程,这些应用程序安装好之后,还须要有一个Home应用程序来负责把它们在桌面上展示出来,在Android系统中,这个默认的Home应 ...
- Android系统默认Home应用程序(Launcher)的启动过程源代码分析
在前面一篇文章中,我们分析了Android系统在启动时安装应用程序的过程,这些应用程序安装好之后,还需要有一个 Home应用程序来负责把它们在桌面上展示出来,在Android系统中,这个默认的Home ...
随机推荐
- java同时连接db2和mysql的程序
db2的jar包安装参见:http://www.cnblogs.com/zifeiy/p/7918554.html 代码: package com.anbank.datafetch; import j ...
- Git的本地仓库与GitHub的远程仓库
gitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名gitHub.GitHub 是目前为止最大的开源 Git 托管服务,并且还是少数同时提供公共代码 ...
- MyBatis 与 Spring 整合
MyBatis-Spring 项目 目前大部分的 Java 互联网项目,都是用 Spring MVC + Spring + MyBatis 搭建平台的. 使用 Spring IoC 可以有效的管理各类 ...
- Mysql之表的操作与索引操作
表的操作: 1.表的创建: create table if not exists table_name(字段定义); 例子: create table if not exists user(id in ...
- ●POJ 3237 Tree
题链: http://poj.org/problem?id=3237 题解: LCT 说一说如何完成询问操作就好了(把一条链的边权变成相反数的操作可以类比着来): 首先明确一下,我们把边权下放到点上. ...
- VK Cup 2017 - Round 2
FallDream打的AB都FFT了,只剩一个我打的C,没进前一百,之后看看马拉松复活赛有没机会呗. A. Voltage Keepsake 题目大意:n个东西,每个东西一开始有bi能源,每秒消耗ai ...
- hdu 4638 树状数组 区间内连续区间的个数(尽可能长)
Group Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Subm ...
- CentOS7.4 源码安装MySQL8.0
MySQL 8 正式版 8.0.11 已发布,官方表示 MySQL 8 要比 MySQL 5.7 快 2 倍,还带来了大量的改进和更快的性能! 以下为本人2018.4.23日安装过程的记录.整个过程大 ...
- c# txt文件的读取和写入
我们在工程实践中经常要处理传感器采集的数据,有时候要把这些数据记录下来,有时候也需要把记录下来的数据读取到项目中.接下来我们用C#演示如何对txt文件进行读写操作.我们要用到StreamReader ...
- Python中模块之re的功能介绍
re模块的功能介绍 1. 方法 match 从开头开始查找 方法:re.match(pattern,string,flags=0) 返回值:<class '_sre.SRE_Match'> ...