Info Call to Reflection API

Description

List of calls allowing the application to examine and modify the structure and behavior of an object at runtime.

Recommendation

This entry is informative, no recommendations applicable.

Technical details

Method io.flutter.view.AccessibilityViewEmbedder$ReflectionAccessors.getSourceNodeId() calling method java.lang.reflect.Method.invoke()


    private Long getSourceNodeId(android.view.accessibility.AccessibilityNodeInfo p4)
    {
        if (this.getSourceNodeId != null) {
            try {
                Object[] v2_1 = new Object[0];
                return ((Long) this.getSourceNodeId.invoke(p4, v2_1));
            } catch (reflect.InvocationTargetException v4_2) {
                android.util.Log.w("AccessibilityBridge", v4_2);
                return 0;
            } catch (reflect.InvocationTargetException v4_1) {
                android.util.Log.w("AccessibilityBridge", v4_1);
                return 0;
            }
        } else {
            return 0;
        }
    }

Method io.flutter.view.AccessibilityViewEmbedder$ReflectionAccessors.getRecordSourceNodeId() calling method java.lang.reflect.Method.invoke()


    private Long getRecordSourceNodeId(android.view.accessibility.AccessibilityRecord p4)
    {
        if (this.getRecordSourceNodeId != null) {
            try {
                Object[] v2_1 = new Object[0];
                return ((Long) this.getRecordSourceNodeId.invoke(p4, v2_1));
            } catch (reflect.InvocationTargetException v4_2) {
                android.util.Log.w("AccessibilityBridge", v4_2);
                return 0;
            } catch (reflect.InvocationTargetException v4_1) {
                android.util.Log.w("AccessibilityBridge", v4_1);
                return 0;
            }
        } else {
            return 0;
        }
    }

Method io.flutter.view.AccessibilityViewEmbedder$ReflectionAccessors.getParentNodeId() calling method java.lang.reflect.Method.invoke()


    private Long getParentNodeId(android.view.accessibility.AccessibilityNodeInfo p3)
    {
        if (this.getParentNodeId != null) {
            try {
                String v1_3 = new Object[0];
                return Long.valueOf(((Long) this.getParentNodeId.invoke(p3, v1_3)).longValue());
            } catch (reflect.InvocationTargetException v0_3) {
                android.util.Log.w("AccessibilityBridge", v0_3);
            } catch (reflect.InvocationTargetException v0_2) {
                android.util.Log.w("AccessibilityBridge", v0_2);
            }
        }
        return io.flutter.view.AccessibilityViewEmbedder$ReflectionAccessors.yoinkParentIdFromParcel(p3);
    }

Method io.flutter.view.AccessibilityViewEmbedder$ReflectionAccessors.getChildId() calling method java.lang.reflect.Method.invoke()


    private Long getChildId(android.view.accessibility.AccessibilityNodeInfo p6, int p7)
    {
        if ((this.getChildId != null) || ((this.childNodeIdsField != null) && (this.longArrayGetIndex != null))) {
            if (this.getChildId == null) {
                try {
                    reflect.Method v0_1 = this.longArrayGetIndex;
                    reflect.InvocationTargetException v6_1 = this.childNodeIdsField.get(p6);
                    Object[] v3_0 = new Object[1];
                    v3_0[0] = Integer.valueOf(p7);
                    return Long.valueOf(((Long) v0_1.invoke(v6_1, v3_0)).longValue());
                } catch (reflect.InvocationTargetException v6_7) {
                    android.util.Log.w("AccessibilityBridge", v6_7);
                } catch (reflect.InvocationTargetException v6_6) {
                    android.util.Log.w("AccessibilityBridge", v6_6);
                }
            } else {
                try {
                    reflect.Method v0_3 = this.getChildId;
                    Object[] v3_1 = new Object[1];
                    v3_1[0] = Integer.valueOf(p7);
                    return ((Long) v0_3.invoke(p6, v3_1));
                } catch (reflect.InvocationTargetException v6_11) {
                    android.util.Log.w("AccessibilityBridge", v6_11);
                } catch (reflect.InvocationTargetException v6_10) {
                    android.util.Log.w("AccessibilityBridge", v6_10);
                }
            }
            return 0;
        } else {
            return 0;
        }
    }

Method io.flutter.plugin.platform.SingleViewPresentation$WindowManagerHandler.invoke() calling method java.lang.reflect.Method.invoke()


    public Object invoke(Object p3, reflect.Method p4, Object[] p5)
    {
        Object v3_1;
        Object v3_0 = p4.getName();
        String v0_3 = v3_0.hashCode();
        if (v0_3 == -1148522778) {
            if (!v3_0.equals("addView")) {
                v3_1 = -1;
            } else {
                v3_1 = 0;
            }
        } else {
            if (v0_3 == 542766184) {
                if (!v3_0.equals("removeViewImmediate")) {
                } else {
                    v3_1 = 2;
                }
            } else {
                if (v0_3 == 931413976) {
                    if (!v3_0.equals("updateViewLayout")) {
                    } else {
                        v3_1 = 3;
                    }
                } else {
                    if ((v0_3 != 1098630473) || (!v3_0.equals("removeView"))) {
                    } else {
                        v3_1 = 1;
                    }
                }
            }
        }
        switch (v3_1) {
            case 0:
                this.addView(p5);
                return 0;
            case 1:
                this.removeView(p5);
                return 0;
            case 2:
                this.removeViewImmediate(p5);
                return 0;
            case 3:
                this.updateViewLayout(p5);
                return 0;
            default:
                return p4.invoke(this.delegate, p5);
        }
    }