public static void makeAccessible(Constructor<?> ctor) {
        if ((!Modifier.isPublic(ctor.getModifiers()) ||
                !Modifier.isPublic(ctor.getDeclaringClass().getModifiers())) && !ctor.isAccessible()) {
            ctor.setAccessible(true);
        }
    }
Make the given constructor accessible, explicitly setting it accessible
if necessary. The {@code setAccessible(true)} method is only called
when actually necessary, to avoid unnecessary conflicts global a JVM
SecurityManager (if active).

@param ctor the constructor to make accessible
@see Constructor#setAccessible
android/android_framework/base/src/main/java/util/ReflectionUtils.java