你的位置:首页 > 操作系统

[操作系统]Android任务栈的运行规律


一:前台栈表示应用A,后台栈则是应用B前台栈/taskAffinity/launchMode        后台栈/taskAffinity/launchModeActivityB/com.lpn.testone/singleTask    ActivityD/com.lpn.modeopj/standardActivityA/com.lpn.testone/singleTask    ActivityC/com.lpn.modeopj/standard从前台栈的B 唤醒后台栈的C,结果是直接唤醒了后台栈的D栈情况:后台找/taskAffinity/launchMode        前台栈/taskAffinity/launchModeActivityB/com.lpn.testone/singleTask    ActivityD/com.lpn.modeopj/standardActivityA/com.lpn.testone/singleTask    ActivityC/com.lpn.modeopj/standard在这种情况下在D界面唤醒A界面,结果B被销毁了栈情况:前台找/taskAffinity/launchMode        后台栈/taskAffinity/launchModeActivityA/com.lpn.testone/singleTask    ActivityD/com.lpn.modeopj/standard                      ActivityC/com.lpn.modeopj/standard                                                                                        二:在同一个应用中跳转栈/taskAffinity/launchMode          //taskAffinity值与singleTask模式可以配合使用,但是与standard/singleTop无效,singleInstance则没有必要ActivityA/com.neng.dong/singleTaskA唤醒一个ActivityB/android.task.browser/standard栈情况:ActivityB/android.task.browser/standardActivityA/com.neng.dong/singleTask                      B 唤醒一个ActivityC/android.taskkk.browser/singleTask栈情况:栈一                     栈二ActivityB/android.task.browser/standard   ActivityC/android.taskkk.browser/singleTask     ActivityA/com.neng.dong/singleTaskC唤醒一个ActivityD/com.neng.dong/singleInstance栈情况:栈一                     栈二                      栈三ActivityB/android.task.browser/standard   ActivityC/android.taskkk.browser/singleTask   ActivityD/com.neng.dong/singleInstance  ActivityA/com.neng.dong/singleTask