UnityEngine.AndroidJNISafe.CheckException C# (CSharp) Method

CheckException() public static method

public static CheckException ( ) : void
return void
        public static void CheckException()
        {
            IntPtr ptr = AndroidJNI.ExceptionOccurred();
            if (ptr != IntPtr.Zero)
            {
                AndroidJNI.ExceptionClear();
                IntPtr clazz = AndroidJNI.FindClass("java/lang/Throwable");
                IntPtr ptr3 = AndroidJNI.FindClass("android/util/Log");
                try
                {
                    IntPtr methodID = AndroidJNI.GetMethodID(clazz, "toString", "()Ljava/lang/String;");
                    IntPtr ptr5 = AndroidJNI.GetStaticMethodID(ptr3, "getStackTraceString", "(Ljava/lang/Throwable;)Ljava/lang/String;");
                    string message = AndroidJNI.CallStringMethod(ptr, methodID, new jvalue[0]);
                    jvalue[] args = new jvalue[1];
                    args[0].l = ptr;
                    string javaStackTrace = AndroidJNI.CallStaticStringMethod(ptr3, ptr5, args);
                    throw new AndroidJavaException(message, javaStackTrace);
                }
                finally
                {
                    DeleteLocalRef(ptr);
                    DeleteLocalRef(clazz);
                    DeleteLocalRef(ptr3);
                }
            }
        }

Usage Example

コード例 #1
0
 public static IntPtr ToObjectArray(IntPtr[] array, IntPtr type)
 {
     try
     {
         return(AndroidJNI.ToObjectArray(array, type));
     }
     finally
     {
         AndroidJNISafe.CheckException();
     }
 }
All Usage Examples Of UnityEngine.AndroidJNISafe::CheckException
AndroidJNISafe