向微信中打开了"(小程序)“后, 可以看到,任务列表不仅显示了"微信”, 还显示了"(小程序)"的入口.
通过这个入口,就可以很方面的切换小程序了, 体验和原生程序也一样。这样的效果如何实现?
微信小程序添加到任务列表实现原理:
Android系统中,显示最近程序列表的View是 RecentsPanelView.
他通过refreshRecentTasksList()加载程序列表,我们来看看代码:
可以看到RecentTasksLoader mRecentTasksLoader负责真正处理数据加载.
private RecentTasksLoader mRecentTasksLoader;
* * *
private void refreshRecentTasksList(
ArrayList<TaskDescription> recentTasksList, boolean firstScreenful) {
if (mRecentTaskDescriptions == null && recentTasksList != null){
onTasksLoaded(recentTasksList, firstScreenful);
} else {
//加载最近的列表
mRecentTasksLoader.loadTasksInBackground();
}
}
顺着看看RecentTasksLoader的实现:
这里可以清楚看到,加载的数据是ActivityManager.getRecentTasks().
也就是说显示的是Task列表.