diff --git a/replugin-host-library/replugin-host-lib/src/main/java/com/qihoo360/loader2/TaskAffinityStates.java b/replugin-host-library/replugin-host-lib/src/main/java/com/qihoo360/loader2/TaskAffinityStates.java index eb55ad55..dab7e6e1 100644 --- a/replugin-host-library/replugin-host-lib/src/main/java/com/qihoo360/loader2/TaskAffinityStates.java +++ b/replugin-host-library/replugin-host-lib/src/main/java/com/qihoo360/loader2/TaskAffinityStates.java @@ -96,6 +96,10 @@ HashMap getStates(ActivityInfo ai) { e.printStackTrace(); } + // index在坑位查找失败时会返回-1,导致这里越界 + // 此处增加修越界检查 + index = Math.max(0, Math.min(mLaunchModeStates.length - 1, index)); + LaunchModeStates states = mLaunchModeStates[index]; if (states != null) { return states.getStates(ai.launchMode, ai.theme);