UnityEngine.AndroidReflection.GetFieldMember C# (CSharp) Method

GetFieldMember() public static method

public static GetFieldMember ( IntPtr jclass, string fieldName, string signature, bool isStatic ) : IntPtr
jclass System.IntPtr
fieldName string
signature string
isStatic bool
return System.IntPtr
        public static IntPtr GetFieldMember(IntPtr jclass, string fieldName, string signature, bool isStatic)
        {
            IntPtr ptr;
            jvalue[] args = new jvalue[4];
            try
            {
                args[0].l = jclass;
                args[1].l = AndroidJNISafe.NewStringUTF(fieldName);
                args[2].l = AndroidJNISafe.NewStringUTF(signature);
                args[3].z = isStatic;
                ptr = AndroidJNISafe.CallStaticObjectMethod(s_ReflectionHelperClass, s_ReflectionHelperGetFieldID, args);
            }
            finally
            {
                AndroidJNISafe.DeleteLocalRef(args[1].l);
                AndroidJNISafe.DeleteLocalRef(args[2].l);
            }
            return ptr;
        }

Usage Example

Example #1
0
        public static IntPtr GetFieldID(IntPtr jclass, string fieldName, string signature, bool isStatic)
        {
            IntPtr intPtr = IntPtr.Zero;
            IntPtr result;

            try
            {
                intPtr = AndroidReflection.GetFieldMember(jclass, fieldName, signature, isStatic);
                result = AndroidJNISafe.FromReflectedField(intPtr);
            }
            catch (Exception ex)
            {
                IntPtr intPtr2 = (!isStatic) ? AndroidJNISafe.GetFieldID(jclass, fieldName, signature) : AndroidJNISafe.GetStaticFieldID(jclass, fieldName, signature);
                if (!(intPtr2 != IntPtr.Zero))
                {
                    throw ex;
                }
                result = intPtr2;
            }
            finally
            {
                AndroidJNISafe.DeleteLocalRef(intPtr);
            }
            return(result);
        }
All Usage Examples Of UnityEngine.AndroidReflection::GetFieldMember