Skip to content

Commit 31e891d

Browse files
committed
feat: Fix FilterGroups for 24.xx
1 parent 8c0934a commit 31e891d

File tree

1 file changed

+6
-0
lines changed
  • app/src/main/java/com/wmods/wppenhacer/xposed/features/customization

1 file changed

+6
-0
lines changed

app/src/main/java/com/wmods/wppenhacer/xposed/features/customization/FilterGroups.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
import java.lang.reflect.Method;
3030
import java.util.List;
3131
import java.util.Objects;
32+
import java.util.concurrent.CopyOnWriteArrayList;
3233

3334
import de.robv.android.xposed.XC_MethodHook;
3435
import de.robv.android.xposed.XSharedPreferences;
@@ -195,6 +196,11 @@ private void setFilter(int position) {
195196
if (mFilterInstance == null) return;
196197
var listField = ReflectionUtils.getFieldByType(mFilterInstance.getClass(), List.class);
197198
var list = (List<Object>) ReflectionUtils.getObjectField(listField, mFilterInstance);
199+
// for 24.xx, it is CopyOnWriteArrayList instead of List
200+
if (list == null) {
201+
listField = ReflectionUtils.getFieldByType(mFilterInstance.getClass(), CopyOnWriteArrayList.class);
202+
list = (List<Object>) ReflectionUtils.getObjectField(listField, mFilterInstance);
203+
}
198204
if (list == null) return;
199205
var name = position == 0 ? "CONTACTS_FILTER" : "GROUP_FILTER";
200206
Object result = null;

0 commit comments

Comments
 (0)