using System; using System.Text; namespace UnityEngine { // Token: 0x02000002 RID: 2 public class AndroidJavaObject : IDisposable { // Token: 0x06000001 RID: 1 RVA: 0x00002050 File Offset: 0x00000250 public AndroidJavaObject(string className, params object[] args) : this() { this._AndroidJavaObject(className, args); } // Token: 0x06000002 RID: 2 RVA: 0x00002064 File Offset: 0x00000264 internal AndroidJavaObject(IntPtr jobject) : this() { if (jobject == IntPtr.Zero) { throw new Exception("JNI: Init'd AndroidJavaObject with null ptr!"); } IntPtr objectClass = AndroidJNISafe.GetObjectClass(jobject); this.m_jobject = new GlobalJavaObjectRef(jobject); this.m_jclass = new GlobalJavaObjectRef(objectClass); AndroidJNISafe.DeleteLocalRef(objectClass); } // Token: 0x06000003 RID: 3 RVA: 0x000020BC File Offset: 0x000002BC internal AndroidJavaObject() { } // Token: 0x06000004 RID: 4 RVA: 0x000020C8 File Offset: 0x000002C8 public void Dispose() { this._Dispose(); } // Token: 0x06000005 RID: 5 RVA: 0x000020D4 File Offset: 0x000002D4 public void Call(string methodName, params object[] args) { this._Call(methodName, args); } // Token: 0x06000006 RID: 6 RVA: 0x000020E0 File Offset: 0x000002E0 public void CallStatic(string methodName, params object[] args) { this._CallStatic(methodName, args); } // Token: 0x06000007 RID: 7 RVA: 0x000020EC File Offset: 0x000002EC public FieldType Get(string fieldName) { return this._Get(fieldName); } // Token: 0x06000008 RID: 8 RVA: 0x00002108 File Offset: 0x00000308 public void Set(string fieldName, FieldType val) { this._Set(fieldName, val); } // Token: 0x06000009 RID: 9 RVA: 0x00002114 File Offset: 0x00000314 public FieldType GetStatic(string fieldName) { return this._GetStatic(fieldName); } // Token: 0x0600000A RID: 10 RVA: 0x00002130 File Offset: 0x00000330 public void SetStatic(string fieldName, FieldType val) { this._SetStatic(fieldName, val); } // Token: 0x0600000B RID: 11 RVA: 0x0000213C File Offset: 0x0000033C public IntPtr GetRawObject() { return this._GetRawObject(); } // Token: 0x0600000C RID: 12 RVA: 0x00002158 File Offset: 0x00000358 public IntPtr GetRawClass() { return this._GetRawClass(); } // Token: 0x0600000D RID: 13 RVA: 0x00002174 File Offset: 0x00000374 public ReturnType Call(string methodName, params object[] args) { return this._Call(methodName, args); } // Token: 0x0600000E RID: 14 RVA: 0x00002194 File Offset: 0x00000394 public ReturnType CallStatic(string methodName, params object[] args) { return this._CallStatic(methodName, args); } // Token: 0x0600000F RID: 15 RVA: 0x000021B4 File Offset: 0x000003B4 protected void DebugPrint(string msg) { if (AndroidJavaObject.enableDebugPrints) { Debug.Log(msg); } } // Token: 0x06000010 RID: 16 RVA: 0x000021CC File Offset: 0x000003CC protected void DebugPrint(string call, string methodName, string signature, object[] args) { if (AndroidJavaObject.enableDebugPrints) { StringBuilder stringBuilder = new StringBuilder(); foreach (object obj in args) { stringBuilder.Append(", "); stringBuilder.Append((obj != null) ? obj.GetType().ToString() : ""); } Debug.Log(string.Concat(new string[] { call, "(\"", methodName, "\"", stringBuilder.ToString(), ") = ", signature })); } } // Token: 0x06000011 RID: 17 RVA: 0x00002278 File Offset: 0x00000478 private void _AndroidJavaObject(string className, params object[] args) { this.DebugPrint("Creating AndroidJavaObject from " + className); if (args == null) { args = new object[1]; } using (AndroidJavaObject androidJavaObject = AndroidJavaObject.FindClass(className)) { this.m_jclass = new GlobalJavaObjectRef(androidJavaObject.GetRawObject()); jvalue[] array = AndroidJNIHelper.CreateJNIArgArray(args); try { IntPtr constructorID = AndroidJNIHelper.GetConstructorID(this.m_jclass, args); IntPtr intPtr = AndroidJNISafe.NewObject(this.m_jclass, constructorID, array); this.m_jobject = new GlobalJavaObjectRef(intPtr); AndroidJNISafe.DeleteLocalRef(intPtr); } finally { AndroidJNIHelper.DeleteJNIArgArray(args, array); } } } // Token: 0x06000012 RID: 18 RVA: 0x0000233C File Offset: 0x0000053C ~AndroidJavaObject() { this.Dispose(true); } // Token: 0x06000013 RID: 19 RVA: 0x00002370 File Offset: 0x00000570 protected virtual void Dispose(bool disposing) { this.m_jobject.Dispose(); this.m_jclass.Dispose(); } // Token: 0x06000014 RID: 20 RVA: 0x0000238C File Offset: 0x0000058C protected void _Dispose() { this.Dispose(true); GC.SuppressFinalize(this); } // Token: 0x06000015 RID: 21 RVA: 0x0000239C File Offset: 0x0000059C protected void _Call(string methodName, params object[] args) { if (args == null) { args = new object[1]; } IntPtr methodID = AndroidJNIHelper.GetMethodID(this.m_jclass, methodName, args, false); jvalue[] array = AndroidJNIHelper.CreateJNIArgArray(args); try { AndroidJNISafe.CallVoidMethod(this.m_jobject, methodID, array); } finally { AndroidJNIHelper.DeleteJNIArgArray(args, array); } } // Token: 0x06000016 RID: 22 RVA: 0x00002408 File Offset: 0x00000608 protected ReturnType _Call(string methodName, params object[] args) { if (args == null) { args = new object[1]; } IntPtr methodID = AndroidJNIHelper.GetMethodID(this.m_jclass, methodName, args, false); jvalue[] array = AndroidJNIHelper.CreateJNIArgArray(args); ReturnType returnType; try { if (AndroidReflection.IsPrimitive(typeof(ReturnType))) { if (typeof(ReturnType) == typeof(int)) { returnType = (ReturnType)((object)AndroidJNISafe.CallIntMethod(this.m_jobject, methodID, array)); } else if (typeof(ReturnType) == typeof(bool)) { returnType = (ReturnType)((object)AndroidJNISafe.CallBooleanMethod(this.m_jobject, methodID, array)); } else if (typeof(ReturnType) == typeof(byte)) { returnType = (ReturnType)((object)AndroidJNISafe.CallByteMethod(this.m_jobject, methodID, array)); } else if (typeof(ReturnType) == typeof(short)) { returnType = (ReturnType)((object)AndroidJNISafe.CallShortMethod(this.m_jobject, methodID, array)); } else if (typeof(ReturnType) == typeof(long)) { returnType = (ReturnType)((object)AndroidJNISafe.CallLongMethod(this.m_jobject, methodID, array)); } else if (typeof(ReturnType) == typeof(float)) { returnType = (ReturnType)((object)AndroidJNISafe.CallFloatMethod(this.m_jobject, methodID, array)); } else if (typeof(ReturnType) == typeof(double)) { returnType = (ReturnType)((object)AndroidJNISafe.CallDoubleMethod(this.m_jobject, methodID, array)); } else if (typeof(ReturnType) == typeof(char)) { returnType = (ReturnType)((object)AndroidJNISafe.CallCharMethod(this.m_jobject, methodID, array)); } else { returnType = default(ReturnType); } } else if (typeof(ReturnType) == typeof(string)) { returnType = (ReturnType)((object)AndroidJNISafe.CallStringMethod(this.m_jobject, methodID, array)); } else if (typeof(ReturnType) == typeof(AndroidJavaClass)) { IntPtr intPtr = AndroidJNISafe.CallObjectMethod(this.m_jobject, methodID, array); returnType = ((!(intPtr == IntPtr.Zero)) ? ((ReturnType)((object)AndroidJavaObject.AndroidJavaClassDeleteLocalRef(intPtr))) : default(ReturnType)); } else if (typeof(ReturnType) == typeof(AndroidJavaObject)) { IntPtr intPtr2 = AndroidJNISafe.CallObjectMethod(this.m_jobject, methodID, array); returnType = ((!(intPtr2 == IntPtr.Zero)) ? ((ReturnType)((object)AndroidJavaObject.AndroidJavaObjectDeleteLocalRef(intPtr2))) : default(ReturnType)); } else { if (!AndroidReflection.IsAssignableFrom(typeof(Array), typeof(ReturnType))) { throw new Exception("JNI: Unknown return type '" + typeof(ReturnType) + "'"); } IntPtr intPtr3 = AndroidJNISafe.CallObjectMethod(this.m_jobject, methodID, array); returnType = ((!(intPtr3 == IntPtr.Zero)) ? ((ReturnType)((object)AndroidJNIHelper.ConvertFromJNIArray(intPtr3))) : default(ReturnType)); } } finally { AndroidJNIHelper.DeleteJNIArgArray(args, array); } return returnType; } // Token: 0x06000017 RID: 23 RVA: 0x000027E8 File Offset: 0x000009E8 protected FieldType _Get(string fieldName) { IntPtr fieldID = AndroidJNIHelper.GetFieldID(this.m_jclass, fieldName, false); FieldType fieldType; if (AndroidReflection.IsPrimitive(typeof(FieldType))) { if (typeof(FieldType) == typeof(int)) { fieldType = (FieldType)((object)AndroidJNISafe.GetIntField(this.m_jobject, fieldID)); } else if (typeof(FieldType) == typeof(bool)) { fieldType = (FieldType)((object)AndroidJNISafe.GetBooleanField(this.m_jobject, fieldID)); } else if (typeof(FieldType) == typeof(byte)) { fieldType = (FieldType)((object)AndroidJNISafe.GetByteField(this.m_jobject, fieldID)); } else if (typeof(FieldType) == typeof(short)) { fieldType = (FieldType)((object)AndroidJNISafe.GetShortField(this.m_jobject, fieldID)); } else if (typeof(FieldType) == typeof(long)) { fieldType = (FieldType)((object)AndroidJNISafe.GetLongField(this.m_jobject, fieldID)); } else if (typeof(FieldType) == typeof(float)) { fieldType = (FieldType)((object)AndroidJNISafe.GetFloatField(this.m_jobject, fieldID)); } else if (typeof(FieldType) == typeof(double)) { fieldType = (FieldType)((object)AndroidJNISafe.GetDoubleField(this.m_jobject, fieldID)); } else if (typeof(FieldType) == typeof(char)) { fieldType = (FieldType)((object)AndroidJNISafe.GetCharField(this.m_jobject, fieldID)); } else { fieldType = default(FieldType); } } else if (typeof(FieldType) == typeof(string)) { fieldType = (FieldType)((object)AndroidJNISafe.GetStringField(this.m_jobject, fieldID)); } else if (typeof(FieldType) == typeof(AndroidJavaClass)) { IntPtr objectField = AndroidJNISafe.GetObjectField(this.m_jobject, fieldID); fieldType = ((!(objectField == IntPtr.Zero)) ? ((FieldType)((object)AndroidJavaObject.AndroidJavaClassDeleteLocalRef(objectField))) : default(FieldType)); } else if (typeof(FieldType) == typeof(AndroidJavaObject)) { IntPtr objectField2 = AndroidJNISafe.GetObjectField(this.m_jobject, fieldID); fieldType = ((!(objectField2 == IntPtr.Zero)) ? ((FieldType)((object)AndroidJavaObject.AndroidJavaObjectDeleteLocalRef(objectField2))) : default(FieldType)); } else { if (!AndroidReflection.IsAssignableFrom(typeof(Array), typeof(FieldType))) { throw new Exception("JNI: Unknown field type '" + typeof(FieldType) + "'"); } IntPtr objectField3 = AndroidJNISafe.GetObjectField(this.m_jobject, fieldID); fieldType = ((!(objectField3 == IntPtr.Zero)) ? ((FieldType)((object)AndroidJNIHelper.ConvertFromJNIArray(objectField3))) : default(FieldType)); } return fieldType; } // Token: 0x06000018 RID: 24 RVA: 0x00002B7C File Offset: 0x00000D7C protected void _Set(string fieldName, FieldType val) { IntPtr fieldID = AndroidJNIHelper.GetFieldID(this.m_jclass, fieldName, false); if (AndroidReflection.IsPrimitive(typeof(FieldType))) { if (typeof(FieldType) == typeof(int)) { AndroidJNISafe.SetIntField(this.m_jobject, fieldID, (int)((object)val)); } else if (typeof(FieldType) == typeof(bool)) { AndroidJNISafe.SetBooleanField(this.m_jobject, fieldID, (bool)((object)val)); } else if (typeof(FieldType) == typeof(byte)) { AndroidJNISafe.SetByteField(this.m_jobject, fieldID, (byte)((object)val)); } else if (typeof(FieldType) == typeof(short)) { AndroidJNISafe.SetShortField(this.m_jobject, fieldID, (short)((object)val)); } else if (typeof(FieldType) == typeof(long)) { AndroidJNISafe.SetLongField(this.m_jobject, fieldID, (long)((object)val)); } else if (typeof(FieldType) == typeof(float)) { AndroidJNISafe.SetFloatField(this.m_jobject, fieldID, (float)((object)val)); } else if (typeof(FieldType) == typeof(double)) { AndroidJNISafe.SetDoubleField(this.m_jobject, fieldID, (double)((object)val)); } else if (typeof(FieldType) == typeof(char)) { AndroidJNISafe.SetCharField(this.m_jobject, fieldID, (char)((object)val)); } } else if (typeof(FieldType) == typeof(string)) { AndroidJNISafe.SetStringField(this.m_jobject, fieldID, (string)((object)val)); } else if (typeof(FieldType) == typeof(AndroidJavaClass)) { AndroidJNISafe.SetObjectField(this.m_jobject, fieldID, ((AndroidJavaClass)((object)val)).m_jclass); } else if (typeof(FieldType) == typeof(AndroidJavaObject)) { AndroidJNISafe.SetObjectField(this.m_jobject, fieldID, ((AndroidJavaObject)((object)val)).m_jobject); } else { if (!AndroidReflection.IsAssignableFrom(typeof(Array), typeof(FieldType))) { throw new Exception("JNI: Unknown field type '" + typeof(FieldType) + "'"); } IntPtr intPtr = AndroidJNIHelper.ConvertToJNIArray((Array)((object)val)); AndroidJNISafe.SetObjectField(this.m_jclass, fieldID, intPtr); } } // Token: 0x06000019 RID: 25 RVA: 0x00002EB4 File Offset: 0x000010B4 protected void _CallStatic(string methodName, params object[] args) { if (args == null) { args = new object[1]; } IntPtr methodID = AndroidJNIHelper.GetMethodID(this.m_jclass, methodName, args, true); jvalue[] array = AndroidJNIHelper.CreateJNIArgArray(args); try { AndroidJNISafe.CallStaticVoidMethod(this.m_jclass, methodID, array); } finally { AndroidJNIHelper.DeleteJNIArgArray(args, array); } } // Token: 0x0600001A RID: 26 RVA: 0x00002F20 File Offset: 0x00001120 protected ReturnType _CallStatic(string methodName, params object[] args) { if (args == null) { args = new object[1]; } IntPtr methodID = AndroidJNIHelper.GetMethodID(this.m_jclass, methodName, args, true); jvalue[] array = AndroidJNIHelper.CreateJNIArgArray(args); ReturnType returnType; try { if (AndroidReflection.IsPrimitive(typeof(ReturnType))) { if (typeof(ReturnType) == typeof(int)) { returnType = (ReturnType)((object)AndroidJNISafe.CallStaticIntMethod(this.m_jclass, methodID, array)); } else if (typeof(ReturnType) == typeof(bool)) { returnType = (ReturnType)((object)AndroidJNISafe.CallStaticBooleanMethod(this.m_jclass, methodID, array)); } else if (typeof(ReturnType) == typeof(byte)) { returnType = (ReturnType)((object)AndroidJNISafe.CallStaticByteMethod(this.m_jclass, methodID, array)); } else if (typeof(ReturnType) == typeof(short)) { returnType = (ReturnType)((object)AndroidJNISafe.CallStaticShortMethod(this.m_jclass, methodID, array)); } else if (typeof(ReturnType) == typeof(long)) { returnType = (ReturnType)((object)AndroidJNISafe.CallStaticLongMethod(this.m_jclass, methodID, array)); } else if (typeof(ReturnType) == typeof(float)) { returnType = (ReturnType)((object)AndroidJNISafe.CallStaticFloatMethod(this.m_jclass, methodID, array)); } else if (typeof(ReturnType) == typeof(double)) { returnType = (ReturnType)((object)AndroidJNISafe.CallStaticDoubleMethod(this.m_jclass, methodID, array)); } else if (typeof(ReturnType) == typeof(char)) { returnType = (ReturnType)((object)AndroidJNISafe.CallStaticCharMethod(this.m_jclass, methodID, array)); } else { returnType = default(ReturnType); } } else if (typeof(ReturnType) == typeof(string)) { returnType = (ReturnType)((object)AndroidJNISafe.CallStaticStringMethod(this.m_jclass, methodID, array)); } else if (typeof(ReturnType) == typeof(AndroidJavaClass)) { IntPtr intPtr = AndroidJNISafe.CallStaticObjectMethod(this.m_jclass, methodID, array); returnType = ((!(intPtr == IntPtr.Zero)) ? ((ReturnType)((object)AndroidJavaObject.AndroidJavaClassDeleteLocalRef(intPtr))) : default(ReturnType)); } else if (typeof(ReturnType) == typeof(AndroidJavaObject)) { IntPtr intPtr2 = AndroidJNISafe.CallStaticObjectMethod(this.m_jclass, methodID, array); returnType = ((!(intPtr2 == IntPtr.Zero)) ? ((ReturnType)((object)AndroidJavaObject.AndroidJavaObjectDeleteLocalRef(intPtr2))) : default(ReturnType)); } else { if (!AndroidReflection.IsAssignableFrom(typeof(Array), typeof(ReturnType))) { throw new Exception("JNI: Unknown return type '" + typeof(ReturnType) + "'"); } IntPtr intPtr3 = AndroidJNISafe.CallStaticObjectMethod(this.m_jclass, methodID, array); returnType = ((!(intPtr3 == IntPtr.Zero)) ? ((ReturnType)((object)AndroidJNIHelper.ConvertFromJNIArray(intPtr3))) : default(ReturnType)); } } finally { AndroidJNIHelper.DeleteJNIArgArray(args, array); } return returnType; } // Token: 0x0600001B RID: 27 RVA: 0x00003300 File Offset: 0x00001500 protected FieldType _GetStatic(string fieldName) { IntPtr fieldID = AndroidJNIHelper.GetFieldID(this.m_jclass, fieldName, true); FieldType fieldType; if (AndroidReflection.IsPrimitive(typeof(FieldType))) { if (typeof(FieldType) == typeof(int)) { fieldType = (FieldType)((object)AndroidJNISafe.GetStaticIntField(this.m_jclass, fieldID)); } else if (typeof(FieldType) == typeof(bool)) { fieldType = (FieldType)((object)AndroidJNISafe.GetStaticBooleanField(this.m_jclass, fieldID)); } else if (typeof(FieldType) == typeof(byte)) { fieldType = (FieldType)((object)AndroidJNISafe.GetStaticByteField(this.m_jclass, fieldID)); } else if (typeof(FieldType) == typeof(short)) { fieldType = (FieldType)((object)AndroidJNISafe.GetStaticShortField(this.m_jclass, fieldID)); } else if (typeof(FieldType) == typeof(long)) { fieldType = (FieldType)((object)AndroidJNISafe.GetStaticLongField(this.m_jclass, fieldID)); } else if (typeof(FieldType) == typeof(float)) { fieldType = (FieldType)((object)AndroidJNISafe.GetStaticFloatField(this.m_jclass, fieldID)); } else if (typeof(FieldType) == typeof(double)) { fieldType = (FieldType)((object)AndroidJNISafe.GetStaticDoubleField(this.m_jclass, fieldID)); } else if (typeof(FieldType) == typeof(char)) { fieldType = (FieldType)((object)AndroidJNISafe.GetStaticCharField(this.m_jclass, fieldID)); } else { fieldType = default(FieldType); } } else if (typeof(FieldType) == typeof(string)) { fieldType = (FieldType)((object)AndroidJNISafe.GetStaticStringField(this.m_jclass, fieldID)); } else if (typeof(FieldType) == typeof(AndroidJavaClass)) { IntPtr staticObjectField = AndroidJNISafe.GetStaticObjectField(this.m_jclass, fieldID); fieldType = ((!(staticObjectField == IntPtr.Zero)) ? ((FieldType)((object)AndroidJavaObject.AndroidJavaClassDeleteLocalRef(staticObjectField))) : default(FieldType)); } else if (typeof(FieldType) == typeof(AndroidJavaObject)) { IntPtr staticObjectField2 = AndroidJNISafe.GetStaticObjectField(this.m_jclass, fieldID); fieldType = ((!(staticObjectField2 == IntPtr.Zero)) ? ((FieldType)((object)AndroidJavaObject.AndroidJavaObjectDeleteLocalRef(staticObjectField2))) : default(FieldType)); } else { if (!AndroidReflection.IsAssignableFrom(typeof(Array), typeof(FieldType))) { throw new Exception("JNI: Unknown field type '" + typeof(FieldType) + "'"); } IntPtr staticObjectField3 = AndroidJNISafe.GetStaticObjectField(this.m_jclass, fieldID); fieldType = ((!(staticObjectField3 == IntPtr.Zero)) ? ((FieldType)((object)AndroidJNIHelper.ConvertFromJNIArray(staticObjectField3))) : default(FieldType)); } return fieldType; } // Token: 0x0600001C RID: 28 RVA: 0x00003694 File Offset: 0x00001894 protected void _SetStatic(string fieldName, FieldType val) { IntPtr fieldID = AndroidJNIHelper.GetFieldID(this.m_jclass, fieldName, true); if (AndroidReflection.IsPrimitive(typeof(FieldType))) { if (typeof(FieldType) == typeof(int)) { AndroidJNISafe.SetStaticIntField(this.m_jclass, fieldID, (int)((object)val)); } else if (typeof(FieldType) == typeof(bool)) { AndroidJNISafe.SetStaticBooleanField(this.m_jclass, fieldID, (bool)((object)val)); } else if (typeof(FieldType) == typeof(byte)) { AndroidJNISafe.SetStaticByteField(this.m_jclass, fieldID, (byte)((object)val)); } else if (typeof(FieldType) == typeof(short)) { AndroidJNISafe.SetStaticShortField(this.m_jclass, fieldID, (short)((object)val)); } else if (typeof(FieldType) == typeof(long)) { AndroidJNISafe.SetStaticLongField(this.m_jclass, fieldID, (long)((object)val)); } else if (typeof(FieldType) == typeof(float)) { AndroidJNISafe.SetStaticFloatField(this.m_jclass, fieldID, (float)((object)val)); } else if (typeof(FieldType) == typeof(double)) { AndroidJNISafe.SetStaticDoubleField(this.m_jclass, fieldID, (double)((object)val)); } else if (typeof(FieldType) == typeof(char)) { AndroidJNISafe.SetStaticCharField(this.m_jclass, fieldID, (char)((object)val)); } } else if (typeof(FieldType) == typeof(string)) { AndroidJNISafe.SetStaticStringField(this.m_jclass, fieldID, (string)((object)val)); } else if (typeof(FieldType) == typeof(AndroidJavaClass)) { AndroidJNISafe.SetStaticObjectField(this.m_jclass, fieldID, ((AndroidJavaClass)((object)val)).m_jclass); } else if (typeof(FieldType) == typeof(AndroidJavaObject)) { AndroidJNISafe.SetStaticObjectField(this.m_jclass, fieldID, ((AndroidJavaObject)((object)val)).m_jobject); } else { if (!AndroidReflection.IsAssignableFrom(typeof(Array), typeof(FieldType))) { throw new Exception("JNI: Unknown field type '" + typeof(FieldType) + "'"); } IntPtr intPtr = AndroidJNIHelper.ConvertToJNIArray((Array)((object)val)); AndroidJNISafe.SetStaticObjectField(this.m_jclass, fieldID, intPtr); } } // Token: 0x0600001D RID: 29 RVA: 0x000039CC File Offset: 0x00001BCC internal static AndroidJavaObject AndroidJavaObjectDeleteLocalRef(IntPtr jobject) { AndroidJavaObject androidJavaObject; try { androidJavaObject = new AndroidJavaObject(jobject); } finally { AndroidJNISafe.DeleteLocalRef(jobject); } return androidJavaObject; } // Token: 0x0600001E RID: 30 RVA: 0x00003A04 File Offset: 0x00001C04 internal static AndroidJavaClass AndroidJavaClassDeleteLocalRef(IntPtr jclass) { AndroidJavaClass androidJavaClass; try { androidJavaClass = new AndroidJavaClass(jclass); } finally { AndroidJNISafe.DeleteLocalRef(jclass); } return androidJavaClass; } // Token: 0x0600001F RID: 31 RVA: 0x00003A3C File Offset: 0x00001C3C protected IntPtr _GetRawObject() { return this.m_jobject; } // Token: 0x06000020 RID: 32 RVA: 0x00003A5C File Offset: 0x00001C5C protected IntPtr _GetRawClass() { return this.m_jclass; } // Token: 0x06000021 RID: 33 RVA: 0x00003A7C File Offset: 0x00001C7C protected static AndroidJavaObject FindClass(string name) { return AndroidJavaObject.JavaLangClass.CallStatic("forName", new object[] { name.Replace('/', '.') }); } // Token: 0x17000001 RID: 1 // (get) Token: 0x06000022 RID: 34 RVA: 0x00003AB4 File Offset: 0x00001CB4 protected static AndroidJavaClass JavaLangClass { get { if (AndroidJavaObject.s_JavaLangClass == null) { AndroidJavaObject.s_JavaLangClass = new AndroidJavaClass(AndroidJNISafe.FindClass("java/lang/Class")); } return AndroidJavaObject.s_JavaLangClass; } } // Token: 0x04000001 RID: 1 private static bool enableDebugPrints = false; // Token: 0x04000002 RID: 2 internal GlobalJavaObjectRef m_jobject; // Token: 0x04000003 RID: 3 internal GlobalJavaObjectRef m_jclass; // Token: 0x04000004 RID: 4 private static AndroidJavaClass s_JavaLangClass; } }