UnityEngine.AndroidJNIModule Use this class to access the runtime data of your Android application. Indicates the Java instance of the current activity. Provides current configuration for the running application. Indicates the Java instance of the current context. A callback to detect the device configuration changes when the application is running. Indicates the Unity bridge Java instance used by an activity or a service. Invokes delegate on Android application's UI thread. Invokes delegate on Android application's main thread. Values that indicate the type of Android asset pack error when the status is either AndroidAssetPackStatus.Failed or AndroidAssetPackStatus.Unknown. Indicates that the application does not have permission to download asset packs under the current device circumstances. Indicates that the Asset Delivery API is not available. Indicates that the end user does not own the application on the device. Indicates that this application is unavailable in the Google's Play Store. Indicates that the requested download is not found. Indicates that there is not enough storage space on the device to download the Android asset pack. Indicates that unknown error occured while downloading an asset pack. Indicates that the request was invalid. Indicates that the Android asset pack is not accessible because there was an error related to the network connection. Indicates that the app requested to use mobile data while there were no Android asset packs waiting for WiFi. Indicates that there is no error. Indicates that the requested Android asset pack is not available in the Google Play Store. Indicates that the device does not have the Play Store application installed or has an unofficial version. Represents the download progress of a single Android asset pack. The downloaded size of the Android asset pack in bytes. Indicates an error which the device encountered when downloading the Android asset pack. The name of the Android asset pack that the device is downloading. The total size of the Android asset pack in bytes. The status of the Android asset pack that the device is downloading. The transfering progress of the downloaded Android asset pack. Provides methods for handling Android asset packs. Checks if all core Unity asset packs are downloaded. Cancels Android asset pack downloads. The array of names of the Android asset packs to cancel the download for. Downloads Android asset packs. The array of names of Android asset packs to download. Returns an object that represents the download operation. If you yield this object inside a coroutine, the coroutine pauses until the operation is complete. Downloads Android asset packs. The array of names of Android asset packs to download. The callback method to inform about download progress. It gets called multiple times for each asset pack during its download. The callback method must have a parameter of AndroidAssetPackInfo type. The default value is null. Gets the full path to the location where the device stores the assets for the Android asset pack. The name of the Android asset pack to get path. Returns the full path to the location where the device stores the assets for the Android asset pack. If the asset pack you specify is not on the device, or if it does not use the fast-follow or on-demand delivery type, this returns an empty string. Queries the state of Android asset packs. The array of names of the Android asset packs to query the state of. Returns an object that represents the query operation. If you yield this object inside a coroutine, the coroutine pauses until the operation is complete. Queries the state of Android asset packs. The array of names of the Android asset packs to query the state of. The callback method to get the result. Unity raises this callback once when the query is complete and the callback receives the state of queried Android asset packs. The callback method must have two parameters: * A ulong type parameter which indicates the total size of the queried asset packs. * An array of AndroidAssetPackState which contains the state of each queried asset pack. Gets the name of every core Unity asset pack built for this application that use either the fast-follow or on-demand delivery type. Returns an array of asset pack names for core Unity asset packs with the fast-follow or on-demand delivery type. If Unity did not create any core asset packs for this application with previously mentioned delivery types, or if the PlayCore plugin is missing, this returns an empty array. Removes Android asset pack. The name of the Android asset pack to remove. Requests to use mobile data to download Android asset packs. Returns an object that represents the request operation. If you yield this object inside a coroutine, the coroutine pauses until the operation is complete. Requests to use mobile data to download Android asset packs. The callback method to get the result. The callback method must have an AndroidAssetPackUseMobileDataRequestResult parameter. This contains the value that indicates the end user's choice. The application raises this callback a single time after the end user submits their decision. Represents the state of a single Android asset pack. Indicates an error code that describes what happened when querying the Android asset pack state. The name of the Android asset pack the status query is for. The status of the Android asset pack. Values that indicate the status of an Android asset pack. Indicates that the Android asset pack download is canceled. Indicates that the device has downloaded the Android asset pack and the asset pack is available to the application. Indicates that the device is downloading the Android asset pack. Indicates that the device failed to download the Android asset pack. Indicates that the Android asset pack is not installed. Indicates that the Android asset pack status should soon change. Indicates that the device has downloaded the Android asset pack and is unpacking the asset pack to its final location. Indicates that the Android asset pack is not available for the application. Indicates that the device has paused the Android asset pack download until it connects to the WiFi network. Represents the choice of an end user that indicates if your application can use mobile data to download Android asset packs. Indicates if mobile data can be used to download Android asset packs. Options to indicate whether the screen can display a wide range brightness levels. Mirrors the Android property value COLOR_MODE_HDR_NO. Mirrors the Android property value COLOR_MODE_HDR_UNDEFINED Mirrors the Android property value COLOR_MODE_HDR_YES Options to indicate whether the screen can display wide range of color gamut or not. Mirrors the Android property value COLOR_MODE_WIDE_COLOR_GAMUT_NO. Mirrors the Android property value COLOR_MODE_WIDE_COLOR_GAMUT_UNDEFINED. Mirrors the Android property value COLOR_MODE_WIDE_COLOR_GAMUT_YES. Use this class to retrieve device specific configuration information. Mirrors the Android property colorMode based on the COLOR_MODE_HDR_MASK value. Mirrors the Android property colorMode based on the COLOR_MODE_WIDE_COLOR_GAMUT_MASK value. Mirrors the Android property densityDpi. Mirrors the Android property fontScale. Mirrors the Android property fontWeightAdjustment. Mirrors the Android property hardKeyboardHidden. Mirrors the Android property keyboard. Mirrors the Android property keyboardHidden. Indicates the language and region preferences set on the device in an array. Mirrors the Android property mcc. Mirrors the Android property mnc. Mirrors the Android property navigation. Mirrors the Android property navigationHidden. Mirrors the Android property orientation. Mirrors the Android property screenHeightDp. Mirrors the Android property screenLayout based on the SCREENLAYOUT_LAYOUTDIR_MASK value. Mirrors the Android property screenLayout based on the SCREENLAYOUT_LONG_MASK value. Mirrors the Android property screenLayout based on the SCREENLAYOUT_ROUND_MASK value. Mirrors the Android property screenLayout based on the SCREENLAYOUT_SIZE_MASK value. Mirrors the Android property screenWidthDp. Mirrors the Android property smallestScreenWidthDp. Mirrors the Android property touchscreen. Mirrors the Android property uiMode based on the UI_MODE_NIGHT_MASK value. Mirrors the Android property uiMode based on the UI_MODE_TYPE_MASK value. Copies the specified configuration into the current instance. Mirrors the Android method Configuration(). Mirrors the Android method toString(). Interface into Android specific functionality. When running on a ChromeOS device, hardwareType is set to AndroidHardwareType.ChromeOS. It is set to AndroidHardwareType.Generic in all other cases. Set sustained performance mode. When enabled, sustained performance mode is intended to provide a consistent level of performance for a prolonged amount of time. Provides methods and properties for accessing different Android game APIs. Provides methods for. Sets the current AndroidGameState to be used for. Requires API level 33 (Android 13). AndroidGameState value. Calls <a href="https:developer.android.comreferenceandroidappGameManager#getGameMode()">getGameMode()</a> in the Android application to retrieve the user selected game mode for the application and returns AndroidGameMode. Requires API level 31 (Android 12). (Read Only) Calls <a href="https:developer.android.comreferenceandroidappGameManager#setGameState(android.app.GameState)">setGameState()</a> in the Android application to specify the loading status. Requires API level 33 (Android 13). Whether the game is in the loading state. AndroidGameState state. Developer supplied custom value, e.g. for the current level. Developer supplied custom value, e.g. for the current quality level. Calls <a href="https:developer.android.comreferenceandroidappGameManager#setGameState(android.app.GameState)">setGameState()</a> in the Android application to specify the loading status. Requires API level 33 (Android 13). Whether the game is in the loading state. AndroidGameState state. Developer supplied custom value, e.g. for the current level. Developer supplied custom value, e.g. for the current quality level. Options for the available <a href="https:developer.android.comreferenceandroidappGameManager#constants_1">game modes</a> that AndroidGame.GameMode can return. <a href="https:developer.android.comreferenceandroidappGameManager#GAME_MODE_BATTERY">Battery</a> game mode, which indicates that your application should use optimizations that save battery and give a longer gameplay time. <a href="https:developer.android.comreferenceandroidappGameManager#GAME_MODE_PERFORMANCE">Performance</a> game mode, which indicates that you application should maximize performance. <a href="https:developer.android.comreferenceandroidappGameManager#GAME_MODE_STANDARD">Standard</a> game mode, which indicates that your application should use its default performance characteristics. Game mode is <a href="https:developer.android.comreferenceandroidappGameManager#GAME_MODE_UNSUPPORTED">not supported<a>. For more information, refer to <a href="https:developer.android.comreferencekotlinandroidappGameManager#getgamemode">getGameMode</a>. Options for the available <a href="https:developer.android.comreferenceandroidappGameState#constants_1">game states</a> that you can pass to AndroidGame.SetGameState or you can set as a current game state mode to be used for method. <a href="https:developer.android.comreferenceandroidappGameState#MODE_CONTENT">Content</a> game state, which indicates that the current content shown is not gameplay related. <a href="https:developer.android.comreferenceandroidappGameState#MODE_GAMEPLAY_INTERRUPTIBLE">Interruptible</a> game state, which indicates that the game is in active, but interruptible, gameplay. <a href="https:developer.android.comreferenceandroidappGameState#MODE_GAMEPLAY_UNINTERRUPTIBLE">Uninterruptible</a> game state, which indicates that the game is in active user play mode, which is real-time and cannot be interrupted <a href="https:developer.android.comreferenceandroidappGameState#MODE_NONE">None</a> indicates that the game is not in active play. <a href="https:developer.android.comreferenceandroidappGameState#MODE_UNKNOWN">Unknown</a> refers to the default game state. Options to indicate whether the physical keyboard is available. Mirrors the Android property value HARDKEYBOARDHIDDEN_NO. Mirrors the Android property value HARDKEYBOARDHIDDEN_UNDEFINED. Mirrors the Android property value HARDKEYBOARDHIDDEN_YES. AndroidHardwareType describes the type of Android device on which the app is running. The Generic category includes all other Android devices. Options to indicate the type of keyboard the device is using. Mirrors the Android property value KEYBOARD_12KEY. Mirrors the Android property value KEYBOARD_NOKEYS. Mirrors the Android property value KEYBOARD_QWERTY. Mirrors the Android property value KEYBOARD_UNDEFINED. Options to indicate whether any keyboard is available for use on the device. Mirrors the Android property value KEYBOARDHIDDEN_NO. Mirrors the Android property value KEYBOARDHIDDEN_UNDEFINED. Mirrors the Android property value KEYBOARDHIDDEN_YES. Use this class to retrieve the language and region preferences set on the device. Indicates the geographical location as an ISO code. Indicates the language as an ISO code. Options to indicate the type of navigation methods used on the device. Mirrors the Android property value NAVIGATION_DPAD. Mirrors the Android property value NAVIGATION_NONAV. Mirrors the Android property value NAVIGATION_TRACKBALL. Mirrors the Android property value NAVIGATION_UNDEFINED. Mirrors the Android property value NAVIGATION_WHEEL. Options to indicate whether the 5-way or DPAD navigation methods are available on the device. Mirrors the Android property value NAVIGATIONHIDDEN_NO. Mirrors the Android property value NAVIGATIONHIDDEN_UNDEFINED. Mirrors the Android property value NAVIGATIONHIDDEN_YES. Options to indicate the orientation of the screen. Mirrors the Android property value ORIENTATION_LANDSCAPE. Mirrors the Android property value ORIENTATION_PORTRAIT. Mirrors the Android property value ORIENTATION_UNDEFINED. Options to indicate the screen layout direction. Mirrors the Android property value SCREENLAYOUT_LAYOUTDIR_LTR. Mirrors the Android property value SCREENLAYOUT_LAYOUTDIR_RTL. Options to indicate whether the aspect ratio of the screen is taller or wider than normal. Mirrors the Android property value SCREENLAYOUT_LONG_NO. Mirrors the Android property value SCREENLAYOUT_LONG_UNDEFINED. Mirrors the Android property value SCREENLAYOUT_LONG_YES. Options to indicate whether the screen shape is rounded or not. Mirrors the Android property value SCREENLAYOUT_ROUND_NO. Mirrors the Android property value SCREENLAYOUT_ROUND_UNDEFINED. Mirrors the Android property value SCREENLAYOUT_ROUND_YES. Options to indicate the size of the device screen. Mirrors the Android property value SCREENLAYOUT_SIZE_LARGE. Mirrors the Android property value SCREENLAYOUT_SIZE_NORMAL. Mirrors the Android property value SCREENLAYOUT_SIZE_SMALL. Mirrors the Android property value SCREENLAYOUT_SIZE_UNDEFINED. Mirrors the Android property value SCREENLAYOUT_SIZE_XLARGE. Options to indicate whether the device supports touchscreen. Mirrors the Android property value TOUCHSCREEN_FINGER. Mirrors the Android property value TOUCHSCREEN_NOTOUCH. Mirrors the Android property value TOUCHSCREEN_UNDEFINED. Options to indicate whether the device screen is in a special mode, such as a night mode. Mirrors the Android property value UI_MODE_NIGHT_NO. Mirrors the Android property value UI_MODE_NIGHT_UNDEFINED. Mirrors the Android property value UI_MODE_NIGHT_YES. Options to indicate the user interface mode of the device. Mirrors the Android property value UI_MODE_TYPE_APPLIANCE. Mirrors the Android property value UI_MODE_TYPE_CAR. Mirrors the Android property value UI_MODE_TYPE_DESK. Mirrors the Android property value UI_MODE_TYPE_NORMAL. Mirrors the Android property value UI_MODE_TYPE_TELEVISION. Mirrors the Android property value UI_MODE_TYPE_UNDEFINED. Mirrors the Android property value UI_MODE_TYPE_VR_HEADSET. Mirrors the Android property value UI_MODE_TYPE_WATCH. Access point to get the list of IApplicationExitInfo|ApplicationExitInfo records with the reasons for the most recent application terminations. Gets records of application terminations including the reasons for the most recent terminations. Application package name Process ID Maximum number of records to return An array of IApplicationExitInfo|ApplicationExitInfo records sorted by date. Sets custom state data for the process. State data Class with options for reporting diagnostics information to the Android system. Calls <a href="https:developer.android.comreferenceandroidappActivity#reportFullyDrawn()">reportFullyDrawn()</a> on the main Activity in the Android application, which is used for diagnostic and optimization purposes in Android. Represents an asynchronous Android asset pack download operation. AndroidAssetPacks.DownloadAssetPackAsync returns an instance of this class. Gets the names of Android asset packs downloaded by this operation. Gets the names of Android asset packs that failed to download. Checks if the operation is finished. Checks if the operation is still running. Gets the progress of the operation. The reason code for termination of the process. Mirrors android:public static final int REASON_ANR. Mirrors android:public static final int REASON_CRASH. Mirrors android:public static final int REASON_CRASH_NATIVE. Mirrors android:public static final int REASON_DEPENDENCY_DIED. Mirrors android:public static final int REASON_EXCESSIVE_RESOURCE_USAGE. Mirrors android:public static final int REASON_EXIT_SELF. Mirrors android:public static final int REASON_FREEZER. Mirrors android:public static final int REASON_INITIALIZATION_FAILURE. Mirrors android:public static final int REASON_LOW_MEMORY. Mirrors android:public static final int REASON_OTHER. Mirrors android:public static final int REASON_PACKAGE_STATE_CHANGE. Mirrors android:public static final int REASON_PACKAGE_UPDATED. Mirrors android:public static final int REASON_PERMISSION_CHANGE. Mirrors android:public static final int REASON_SIGNALED. Mirrors android:public static final int REASON_UNKNOWN. Mirrors android:public static final int REASON_USER_REQUESTED. Mirrors android:public static final int REASON_USER_STOPPED. Represents an asynchronous Android asset pack state request operation. AndroidAssetPacks.GetAssetPackStateAsync returns an instance of this class. Checks if the operation is finished. Checks if the operation is still running. Gets the total size in bytes of all Android asset packs that had their status checked by this operation. Gets the states of all Android asset packs that had their status checked by this operation. Mirrors android:android.app.ApplicationExitInfo. Mirrors android:android.app.ApplicationExitInfo getDefiningUid() method. Mirrors android:android.app.ApplicationExitInfo describeContents() method. Mirrors android:android.app.ApplicationExitInfo getDescription() method. Mirrors android:android.app.ApplicationExitInfo getImportance() method. Mirrors android:android.app.ApplicationExitInfo getPackageUid() method. Mirrors android:android.app.ApplicationExitInfo getPid() method. Mirrors android:android.app.ApplicationExitInfo getProcessName() method. Mirrors android:android.app.ApplicationExitInfo getProcessStateSummary() method. Mirrors android:android.app.ApplicationExitInfo getPss() method. Mirrors android:android.app.ApplicationExitInfo getRealUid() method. Mirrors android:android.app.ApplicationExitInfo getReason() method. Mirrors android:android.app.ApplicationExitInfo getRss() method. Mirrors android:android.app.ApplicationExitInfo getStatus() method. Mirrors android:android.app.ApplicationExitInfo getTimestamp() method. Mirrors android:android.app.ApplicationExitInfo TraceInputStream() method. Returns the trace content in UTF8 string format. Structure describing a permission that requires user authorization. Used when requesting permission or checking if permission has been granted to use the camera. Used when requesting permission or checking if permission has been granted to use the users location with coarse granularity. Used when requesting permission or checking if permission has been granted to read from external storage such as a SD card. Used when requesting permission or checking if permission has been granted to write to external storage such as a SD card. Used when requesting permission or checking if permission has been granted to use the users location with high precision. Check if the user has granted access to a device resource or information that requires authorization. A string representing the permission to request. For permissions which Unity has not predefined, you can provide Android's in-built permission strings such as "android.permission.READ_CONTACTS". For a list of permission strings, refer to Android's documentation on <a href="https:developer.android.comreferenceandroidManifest.permission"> Manifest.permission<a>. Whether the requested permission has been granted. Used when requesting permission or checking if permission has been granted to use the microphone. Request the user to grant access to a device resource or information that requires authorization. A string that describes the permission to request. For permissions which Unity has not predefined, you can provide Android's in-built permission strings such as "android.permission.READ_CONTACTS". For a list of permission strings, refer to Android's documentation on <a href="https:developer.android.comreferenceandroidManifest.permission"> Manifest.permission<a>. Request the user to grant access to a device resource or information that requires authorization. A string that describes the permission to request. For permissions which Unity has not predefined, you can provide Android's in-built permission strings such as "android.permission.READ_CONTACTS". For a list of permission strings, refer to Android's documentation on <a href="https:developer.android.comreferenceandroidManifest.permission"> Manifest.permission<a>. An instance of callbacks invoked when permission request is executed. Request the user to grant access to multiple device resources or information that requires authorization. An instance of callbacks invoked when permission request is executed. An array of strings that describe the permissions to request. Request the user to grant access to multiple device resources or information that requires authorization. An instance of callbacks invoked when permission request is executed. An array of strings that describe the permissions to request. Check whether to display the UI explaining the reason for permission before requesting it. A string identifier for permission. This is the value of Android constant. The value returned by equivalent Android method. Contains callbacks invoked when permission request is executed using Permission.RequestUserPermission. Triggered when the user chooses Deny for a permission request. Permission name. Triggered when the user chooses Deny And Don't Ask Again for a permission request or denies the permission twice on newer Android versions, or the operating system determines that it should not be requested again. Permission name. Triggered when the user chooses Allow for a permission request. Permission name. Triggered when the user dismisses the permission request without explicitly choosing any option. Permission name. Indicates the relative importance level that the system assigns to the process. These levels are represented by constants. The constants are numbered in such a way that more important values are always smaller than the less important values. Mirrors android:public static final int IMPORTANCE_CACHED. Mirrors android:public static final int IMPORTANCE_CANT_SAVE_STATE. Mirrors android:public static final int IMPORTANCE_FOREGROUND. Mirrors android:public static final int IMPORTANCE_FOREGROUND_SERVICE. Mirrors android:public static final int IMPORTANCE_GONE. Mirrors android:public static final int IMPORTANCE_PERCEPTIBLE. Mirrors android:public static final int IMPORTANCE_SERVICE. Mirrors android:public static final int IMPORTANCE_TOP_SLEEPING. Mirrors android:public static final int IMPORTANCE_VISIBLE. Represents an asynchronous operation that requests to use mobile data to download Android asset packs. Checks if the operation is finished. Checks if the operation is still running. Indicates whether the end user allowed the application to use mobile data to download Android asset packs. AndroidJavaClass is the Unity representation of a generic instance of java.lang.Class. Construct an AndroidJavaClass from the class name. Specifies the Java class name (e.g. <tt>java.lang.String</tt>). AndroidJavaObject is the Unity representation of a generic instance of java.lang.Object. Calls a Java method on an object (non-static). Specifies which method to call. An array of parameters passed to the method. Calls a Java method on an object (non-static). Specifies which method to call. An array of parameters passed to the method. Call a Java method on an object. Specifies which method to call. An array of parameters passed to the method. Call a Java method on an object. Specifies which method to call. An array of parameters passed to the method. Calls a Java method on an object (non-static). An array of parameters passed to the method. The ID of the method to call. Calls a Java method on an object (non-static). An array of parameters passed to the method. The ID of the method to call. Calls a Java method on an object (non-static). An array of parameters passed to the method. The ID of the method to call. Calls a Java method on an object (non-static). An array of parameters passed to the method. The ID of the method to call. Call a static Java method on a class. Specifies which method to call. An array of parameters passed to the method. Call a static Java method on a class. Specifies which method to call. An array of parameters passed to the method. Call a static Java method on a class. Specifies which method to call. An array of parameters passed to the method. Call a static Java method on a class. Specifies which method to call. An array of parameters passed to the method. Call a static Java method on a class. An array of parameters passed to the method. The ID of the method to call. Call a static Java method on a class. An array of parameters passed to the method. The ID of the method to call. Call a static Java method on a class. An array of parameters passed to the method. The ID of the method to call. Call a static Java method on a class. An array of parameters passed to the method. The ID of the method to call. Creates a clone of the C# object that references the same Java object. A new C# object which references the same Java object as the original instance. Construct an AndroidJavaObject based on the name of the class. Specifies the Java class name (e.g. "<tt>java.lang.String<tt>" or "<tt>javalangString<tt>"). An array of parameters passed to the constructor. Create AndroidJavaObject for existing Java object. A reference to existing Java object. Create AndroidJavaObject (and it's Java counterpart) using given Java class and constructor. A pointer to Java class. A method ID for the constructor to be used. An array of parameters passed to the constructor. IDisposable callback. Get the value of a field in an object (non-static). The name of the field (e.g. int counter; would have fieldName = "counter"). Get the value of a field in an object (non-static). The ID of the field to get. Retrieves the raw jclass pointer to the Java class. Note: Using raw JNI functions requires advanced knowledge of the Android Java Native Interface (JNI). Retrieves the raw jobject pointer to the Java object. Note: Using raw JNI functions requires advanced knowledge of the Android Java Native Interface (JNI). Get the value of a static field in an object type. The name of the field (e.g. <i>int counter;</i> would have fieldName = "counter"). Get the value of a static field in an object type. The ID of the field to get. Set the value of a field in an object (non-static). The name of the field (e.g. int counter; would have fieldName = "counter"). The value to assign to the field. It has to match the field type. Set the value of a field in an object (non-static). The ID of the field to set. The value to assign to the field. It has to match the field type. Set the value of a static field in an object type. The name of the field (e.g. int counter; would have fieldName = "counter"). The value to assign to the field. It has to match the field type. Set the value of a static field in an object type. The ID of the field to set. The value to assign to the field. It has to match the field type. This class can be used to implement any java interface. Any java vm method invocation matching the interface on the proxy object will automatically be passed to the c# implementation. The equivalent of the java.lang.Object equals() method. Returns true when the objects are equal and false if otherwise. The equivalent of the java.lang.Object hashCode() method. Returns the hash code of the java proxy object. Java interface implemented by the proxy. The equivalent of the java.lang.Object toString() method. Returns C# class name + " <c# proxy java object>". Java interface to be implemented by the proxy. Java interface to be implemented by the proxy. Called by the java vm whenever a method is invoked on the java proxy interface. You can override this to run special code on method invocation, or you can leave the implementation as is, and leave the default behavior which is to look for c# methods matching the signature of the java method. Name of the invoked java method. Arguments passed from the java vm - converted into AndroidJavaObject, AndroidJavaClass or a primitive. Arguments passed from the java vm - all objects are represented by AndroidJavaObject, int for instance is represented by a java.lang.Integer object. Called by the java vm whenever a method is invoked on the java proxy interface. You can override this to run special code on method invocation, or you can leave the implementation as is, and leave the default behavior which is to look for c# methods matching the signature of the java method. Name of the invoked java method. Arguments passed from the java vm - converted into AndroidJavaObject, AndroidJavaClass or a primitive. Arguments passed from the java vm - all objects are represented by AndroidJavaObject, int for instance is represented by a java.lang.Integer object. Called by the java vm whenever a method is invoked on the java proxy interface. You can override this to run special code on method invocation, or you can leave the implementation as is, which will convert argument array to AndroidJavaObject[] and call other Invoke. Name of the invoked java method. A reference to Java object array with arguments passed to this method. A local reference to Java object, representing the return value. AndroidJavaRunnable is the Unity representation of a java.lang.Runnable object. 'Raw' JNI interface to Android Java VM from Unity scripting (C#). Note: Using raw JNI functions requires advanced knowledge of the Android Java Native Interface (JNI). Please take note. Allocates a new Java object without invoking any of the constructors for the object. Attaches the current thread to a Java (Dalvik) VM. Calls a Java instance method defined by <tt>methodID<tt>, optionally passing an array of arguments (<tt>args<tt>) to the method. Calls a Java instance method defined by <tt>methodID<tt>, optionally passing an array of arguments (<tt>args<tt>) to the method. Calls a Java instance method defined by <tt>methodID<tt>, optionally passing an array of arguments (<tt>args<tt>) to the method. Calls a Java instance method defined by <tt>methodID<tt>, optionally passing an array of arguments (<tt>args<tt>) to the method. Calls a Java instance method defined by <tt>methodID<tt>, optionally passing an array of arguments (<tt>args<tt>) to the method. Calls a Java instance method defined by <tt>methodID<tt>, optionally passing an array of arguments (<tt>args<tt>) to the method. Calls a Java instance method defined by <tt>methodID<tt>, optionally passing an array of arguments (<tt>args<tt>) to the method. Calls a Java instance method defined by <tt>methodID<tt>, optionally passing an array of arguments (<tt>args<tt>) to the method. Calls a Java instance method defined by <tt>methodID<tt>, optionally passing an array of arguments (<tt>args<tt>) to the method. Calls a Java instance method defined by <tt>methodID<tt>, optionally passing an array of arguments (<tt>args<tt>) to the method. Calls a Java instance method defined by <tt>methodID<tt>, optionally passing an array of arguments (<tt>args<tt>) to the method. Calls a Java instance method defined by <tt>methodID<tt>, optionally passing an array of arguments (<tt>args<tt>) to the method. Calls a Java instance method defined by <tt>methodID<tt>, optionally passing an array of arguments (<tt>args<tt>) to the method. Calls a Java instance method defined by <tt>methodID<tt>, optionally passing an array of arguments (<tt>args<tt>) to the method. Calls a Java instance method defined by <tt>methodID<tt>, optionally passing an array of arguments (<tt>args<tt>) to the method. Calls a Java instance method defined by <tt>methodID<tt>, optionally passing an array of arguments (<tt>args<tt>) to the method. Calls a Java instance method defined by <tt>methodID<tt>, optionally passing an array of arguments (<tt>args<tt>) to the method. Calls a Java instance method defined by <tt>methodID<tt>, optionally passing an array of arguments (<tt>args<tt>) to the method. Calls a Java instance method defined by <tt>methodID<tt>, optionally passing an array of arguments (<tt>args<tt>) to the method. Invokes the specified <tt>methodID<tt> static method on a Java object, optionally passing in an array of arguments (<tt>args<tt>). Invokes the specified <tt>methodID<tt> static method on a Java object, optionally passing in an array of arguments (<tt>args<tt>). Invokes the specified <tt>methodID<tt> static method on a Java object, optionally passing in an array of arguments (<tt>args<tt>). Invokes the specified <tt>methodID<tt> static method on a Java object, optionally passing in an array of arguments (<tt>args<tt>). Invokes the specified <tt>methodID<tt> static method on a Java object, optionally passing in an array of arguments (<tt>args<tt>). Invokes the specified <tt>methodID<tt> static method on a Java object, optionally passing in an array of arguments (<tt>args<tt>). Invokes the specified <tt>methodID<tt> static method on a Java object, optionally passing in an array of arguments (<tt>args<tt>). Invokes the specified <tt>methodID<tt> static method on a Java object, optionally passing in an array of arguments (<tt>args<tt>). Invokes the specified <tt>methodID<tt> static method on a Java object, optionally passing in an array of arguments (<tt>args<tt>). Invokes the specified <tt>methodID<tt> static method on a Java object, optionally passing in an array of arguments (<tt>args<tt>). Invokes the specified <tt>methodID<tt> static method on a Java object, optionally passing in an array of arguments (<tt>args<tt>). Invokes the specified <tt>methodID<tt> static method on a Java object, optionally passing in an array of arguments (<tt>args<tt>). Invokes the specified <tt>methodID<tt> static method on a Java object, optionally passing in an array of arguments (<tt>args<tt>). Invokes the specified <tt>methodID<tt> static method on a Java object, optionally passing in an array of arguments (<tt>args<tt>). Invokes the specified <tt>methodID<tt> static method on a Java object, optionally passing in an array of arguments (<tt>args<tt>). Invokes the specified <tt>methodID<tt> static method on a Java object, optionally passing in an array of arguments (<tt>args<tt>). Invokes the specified <tt>methodID<tt> static method on a Java object, optionally passing in an array of arguments (<tt>args<tt>). Invokes the specified <tt>methodID<tt> static method on a Java object, optionally passing in an array of arguments (<tt>args<tt>). Invokes the specified <tt>methodID<tt> static method on a Java object, optionally passing in an array of arguments (<tt>args<tt>). Invokes the specified <tt>methodID<tt> static method on a Java object, optionally passing in an array of arguments (<tt>args<tt>). Invokes the specified <tt>methodID<tt> static method on a Java object, optionally passing in an array of arguments (<tt>args<tt>). Invokes the specified <tt>methodID<tt> static method on a Java object, optionally passing in an array of arguments (<tt>args<tt>). Invokes the specified <tt>methodID<tt> static method on a Java object, optionally passing in an array of arguments (<tt>args<tt>). Calls a Java instance method defined by <tt>methodID<tt>, optionally passing an array of arguments (<tt>args<tt>) to the method. Calls a Java instance method defined by <tt>methodID<tt>, optionally passing an array of arguments (<tt>args<tt>) to the method. Calls a Java instance method defined by <tt>methodID<tt>, optionally passing an array of arguments (<tt>args<tt>) to the method. Calls a Java instance method defined by <tt>methodID<tt>, optionally passing an array of arguments (<tt>args<tt>) to the method. Deletes the global reference pointed to by <tt>obj</tt>. Deletes the local reference pointed to by <tt>obj</tt>. Deletes the global weak reference pointed to by <tt>obj</tt>. Detaches the current thread from a Java (Dalvik) VM. Ensures that at least a given number of local references can be created in the current thread. Clears any exception that is currently being thrown. Prints an exception and a backtrace of the stack to the <tt>logcat</tt> Determines if an exception is being thrown. Raises a fatal error and does not expect the VM to recover. This function does not return. This function loads a locally-defined class. Converts a Java array of <tt>boolean</tt> to a managed array of System.Boolean. Converts a Java array of <tt>byte</tt> to a managed array of System.Byte. Converts a Java array of <tt>char</tt> to a managed array of System.Char. Converts a Java array of <tt>double</tt> to a managed array of System.Double. Converts a Java array of <tt>float</tt> to a managed array of System.Single. Converts a Java array of <tt>int</tt> to a managed array of System.Int32. Converts a Java array of <tt>long</tt> to a managed array of System.Int64. Converts a Java array of <tt>java.lang.Object</tt> to a managed array of System.IntPtr, representing Java objects. Converts a <tt>java.lang.reflect.Field</tt> to a field ID. Converts a <tt>java.lang.reflect.Method<tt> or <tt>java.lang.reflect.Constructor<tt> object to a method ID. Converts a Java array of <tt>byte</tt> to a managed array of System.SByte. Converts a Java array of <tt>short</tt> to a managed array of System.Int16. Returns the number of elements in the array. Returns the value of one element of a primitive array. Returns the value of an instance (nonstatic) field of an object. Returns the value of one element of a primitive array. Returns the value of an instance (nonstatic) field of an object. Returns the value of one element of a primitive array. Returns the value of an instance (nonstatic) field of an object. Fetches and returns the starting address of the memory region referenced by the given direct java.nio.Buffer. Fetches and returns the capacity of the memory region referenced by the given direct java.nio.Buffer. Returns the NativeArray backed by the same memory region as the given direct java.nio.Buffer. Returns the NativeArray backed by the same memory region as the given direct java.nio.Buffer. Returns the value of one element of a primitive array. Returns the value of an instance (nonstatic) field of an object. Returns the field ID for an instance (nonstatic) field of a class. Returns the value of one element of a primitive array. Returns the value of an instance (nonstatic) field of an object. Returns the value of one element of a primitive array. Returns the value of an instance (nonstatic) field of an object. Returns the pointer to JavaVM. Returns the value of one element of a primitive array. Returns the value of an instance (nonstatic) field of an object. Returns the method ID for an instance (nonstatic) method of a class or interface. Returns an element of an <tt>Object</tt> array. Returns the class of an object. Returns the value of an instance (nonstatic) field of an object. Returns the value of one element of a primitive array. Returns the value of an instance (nonstatic) field of an object. Returns the value of one element of a primitive array. Returns the value of an instance (nonstatic) field of an object. Returns the value of a static field of an object. Returns the value of a static field of an object. Returns the value of a static field of an object. Returns the value of a static field of an object. Returns the field ID for a static field of a class. Returns the value of a static field of an object. Returns the value of a static field of an object. Returns the value of a static field of an object. Returns the method ID for a static method of a class. Returns the value of a static field of an object. Returns the value of a static field of an object. Returns the value of a static field of an object. Returns the value of a static field of an object. Returns a pointer to the array of Unicode characters of the string. This pointer is valid until ReleaseStringchars() is called. Returns the value of an instance (nonstatic) field of an object. Returns the length (the count of Unicode characters) of a Java string. Returns a managed string object representing the string in modified UTF-8 encoding. Returns the length in bytes of the modified UTF-8 representation of a string. If <tt>clazz<tt> represents any class other than the class <tt>Object<tt>, then this function returns the object that represents the superclass of the class specified by <tt>clazz</tt>. Returns the version of the native method interface. Calls AndroidJNI.AttachCurrentThread (if necessary) before invoking a delegate, and then calls AndroidJNI.DetachCurrentThread. Determines whether an object of <tt>clazz1<tt> can be safely cast to <tt>clazz2<tt>. Tests whether an object is an instance of a class. Tests whether two references refer to the same Java object. Constructs a new primitive array object. Constructs a new primitive array object. Constructs a new primitive array object. Allocates and returns a direct java.nio.ByteBuffer referring to the block of memory starting at the memory address address and extending capacity bytes. Allocates and returns a direct java.nio.ByteBuffer referring to the same block of memory as the given NativeArray. Allocates and returns a direct java.nio.ByteBuffer referring to the same block of memory as the given NativeArray. Constructs a new primitive array object. Constructs a new primitive array object. Creates a new global reference to the object referred to by the <tt>obj</tt> argument. Constructs a new primitive array object. Creates a new local reference that refers to the same object as <tt>obj</tt>. Constructs a new primitive array object. Constructs a new Java object. The method ID indicates which constructor method to invoke. This ID must be obtained by calling GetMethodID() with <init> as the method name and void (V) as the return type. Constructs a new Java object. The method ID indicates which constructor method to invoke. This ID must be obtained by calling GetMethodID() with <init> as the method name and void (V) as the return type. Constructs a new array holding objects in class <tt>clazz<tt>. All elements are initially set to <tt>obj<tt>. Constructs a new primitive array object. Constructs a new primitive array object. Constructs a new <tt>java.lang.String</tt> object from an array of Unicode characters. Constructs a new <tt>java.lang.String</tt> object from an array of Unicode characters. Constructs a new <tt>java.lang.String</tt> object from an array of characters in modified UTF-8 encoding. Creates a new global weak reference to the object referred to by the <tt>obj</tt> argument. Pops off the current local reference frame, frees all the local references, and returns a local reference in the previous local reference frame for the given <tt>result</tt> object. Creates a new local reference frame, in which at least a given number of local references can be created. Registers native methods with the class specified by the clazz argument. Zero on success, negative value on error. Falsely succeeds in Editor. Sets the boolean value of one element in a primitive array. The array of native booleans. Index of the array element to set. The value to set. Sets the boolean value of one element in a primitive array. The array of native booleans. Index of the array element to set. The value to set - for 'true' use 1, for 'false' use 0. Sets the value of an instance field of the specified object. Sets the sbyte value of one element in a primitive array. Sets the value of an instance field of the specified object. Sets the char value of one element in a primitive array. Sets the value of an instance field of the specified object. Sets the double value of one element in a primitive array. Sets the value of an instance field of the specified object. Sets the float value of one element in a primitive array. Sets the value of an instance field of the specified object. Sets the int value of one element in a primitive array. Sets the value of an instance field of the specified object. Sets the long value of one element in a primitive array. Sets the value of an instance field of the specified object. Sets an element of an <tt>Object</tt> array. Sets the value of an instance field of the specified object. Sets the sbyte value of one element in a primitive array. Sets the value of an instance field of the specified object. Sets the short value of one element in a primitive array. Sets the value of an instance field of the specified object. Sets the value of a static field in the specified object. Sets the value of a static field in the specified object. Sets the value of a static field in the specified object. Sets the value of a static field in the specified object. Sets the value of a static field in the specified object. Sets the value of a static field in the specified object. Sets the value of a static field in the specified object. Sets the value of a static field in the specified object. Sets the value of a static field in the specified object. Sets the value of a static field in the specified object. Sets the value of a static field in the specified object. Sets the value of an instance field of the specified object. Causes a <tt>java.lang.Throwable</tt> object to be thrown. Constructs an exception object from the specified class with the <tt>message</tt> specified by message and causes that exception to be thrown. Converts a managed array of System.Boolean to a Java array of <tt>boolean</tt>. Converts a managed array of System.Byte to a Java array of <tt>byte</tt>. Converts a managed array of System.Char to a Java array of <tt>char</tt>. Converts a managed array of System.Double to a Java array of <tt>double</tt>. Converts a managed array of System.Single to a Java array of <tt>float</tt>. Converts a managed array of System.Int32 to a Java array of <tt>int</tt>. Converts a managed array of System.Int64 to a Java array of <tt>long</tt>. Converts a managed array of System.IntPtr, representing Java objects, to a Java array of <tt>java.lang.Object</tt>. Converts a field ID derived from cls to a <tt>java.lang.reflect.Field</tt> object. Converts a method ID derived from clazz to a <tt>java.lang.reflect.Method<tt> or <tt>java.lang.reflect.Constructor<tt> object. Converts a managed array of System.SByte to a Java array of <tt>byte</tt>. Converts a managed array of System.Int16 to a Java array of <tt>short</tt>. Unregisters native methods of a class. The class goes back to the state before it was linked or registered with its native method functions. Zero on success, negative value on error. Falsely succeeds in Editor. Helper interface for JNI interaction; signature creation and method lookups. Note: Using raw JNI functions requires advanced knowledge of the Android Java Native Interface (JNI). Please take note. Set debug to true to log calls through the AndroidJNIHelper. Convert primitive to it's object counterpart. Primitive value to be boxed. A local reference to Java object. Convert primitive to it's object counterpart. Primitive value to be boxed. A local reference to Java object. Convert primitive to it's object counterpart. Primitive value to be boxed. A local reference to Java object. Convert primitive to it's object counterpart. Primitive value to be boxed. A local reference to Java object. Convert primitive to it's object counterpart. Primitive value to be boxed. A local reference to Java object. Convert primitive to it's object counterpart. Primitive value to be boxed. A local reference to Java object. Convert primitive to it's object counterpart. Primitive value to be boxed. A local reference to Java object. Convert primitive to it's object counterpart. Primitive value to be boxed. A local reference to Java object. Creates a managed array from a Java array. Java array object to be converted into a managed array. Creates a Java array from a managed array. Managed array to be converted into a Java array object. Creates a java proxy object which connects to the supplied proxy implementation. An implementatinon of a java interface in c#. Creates a UnityJavaRunnable object (implements java.lang.Runnable). A delegate representing the java.lang.Runnable. Creates the parameter array to be used as argument list when invoking Java code through CallMethod() in AndroidJNI. An array of objects that should be converted to Call parameters. Deletes any local jni references previously allocated by CreateJNIArgArray(). The array of arguments used as a parameter to CreateJNIArgArray(). The array returned by CreateJNIArgArray(). Scans a particular Java class for a constructor method matching a signature. Raw JNI Java class object (obtained by calling AndroidJNI.FindClass). Constructor method signature (e.g. obtained by calling AndroidJNIHelper.GetSignature). Scans a particular Java class for a constructor method matching a signature. Raw JNI Java class object (obtained by calling AndroidJNI.FindClass). Constructor method signature (e.g. obtained by calling AndroidJNIHelper.GetSignature). Get a JNI method ID for a constructor based on calling arguments. Raw JNI Java class object (obtained by calling AndroidJNI.FindClass). Array with parameters to be passed to the constructor when invoked. Scans a particular Java class for a field matching a name and a signature. Raw JNI Java class object (obtained by calling AndroidJNI.FindClass). Name of the field as declared in Java. Field signature (e.g. obtained by calling AndroidJNIHelper.GetSignature). Set to <tt>true<tt> for static fields; <tt>false<tt> for instance (nonstatic) fields. Scans a particular Java class for a field matching a name and a signature. Raw JNI Java class object (obtained by calling AndroidJNI.FindClass). Name of the field as declared in Java. Field signature (e.g. obtained by calling AndroidJNIHelper.GetSignature). Set to <tt>true<tt> for static fields; <tt>false<tt> for instance (nonstatic) fields. Scans a particular Java class for a field matching a name and a signature. Raw JNI Java class object (obtained by calling AndroidJNI.FindClass). Name of the field as declared in Java. Field signature (e.g. obtained by calling AndroidJNIHelper.GetSignature). Set to <tt>true<tt> for static fields; <tt>false<tt> for instance (nonstatic) fields. Get a JNI field ID based on type detection. Generic parameter represents the field type. Raw JNI Java class object (obtained by calling AndroidJNI.FindClass). Name of the field as declared in Java. Set to <tt>true<tt> for static fields; <tt>false<tt> for instance (nonstatic) fields. Scans a particular Java class for a method matching a name and a signature. Raw JNI Java class object (obtained by calling AndroidJNI.FindClass). Name of the method as declared in Java. Method signature (e.g. obtained by calling AndroidJNIHelper.GetSignature). Set to <tt>true<tt> for static methods; <tt>false<tt> for instance (nonstatic) methods. Scans a particular Java class for a method matching a name and a signature. Raw JNI Java class object (obtained by calling AndroidJNI.FindClass). Name of the method as declared in Java. Method signature (e.g. obtained by calling AndroidJNIHelper.GetSignature). Set to <tt>true<tt> for static methods; <tt>false<tt> for instance (nonstatic) methods. Scans a particular Java class for a method matching a name and a signature. Raw JNI Java class object (obtained by calling AndroidJNI.FindClass). Name of the method as declared in Java. Method signature (e.g. obtained by calling AndroidJNIHelper.GetSignature). Set to <tt>true<tt> for static methods; <tt>false<tt> for instance (nonstatic) methods. Get a JNI method ID based on calling arguments. Raw JNI Java class object (obtained by calling AndroidJNI.FindClass). Name of the method as declared in Java. Array with parameters to be passed to the method when invoked. Set to <tt>true<tt> for static methods; <tt>false<tt> for instance (nonstatic) methods. Get a JNI method ID based on calling arguments. Raw JNI Java class object (obtained by calling AndroidJNI.FindClass). Name of the method as declared in Java. Array with parameters to be passed to the method when invoked. Set to <tt>true<tt> for static methods; <tt>false<tt> for instance (nonstatic) methods. Creates the JNI signature string for particular object type. Object for which a signature is to be produced. Creates the JNI signature string for an object parameter list. Array of object for which a signature is to be produced. Creates the JNI signature string for an object parameter list. Array of object for which a signature is to be produced. Converts Java object of a boxed type to its primitive counterpart. A Java object that is a counterpart of a primitive type of the value parameter. Destination for the primitive value of obj. Converts Java object of a boxed type to its primitive counterpart. A Java object that is a counterpart of a primitive type of the value parameter. Destination for the primitive value of obj. Converts Java object of a boxed type to its primitive counterpart. A Java object that is a counterpart of a primitive type of the value parameter. Destination for the primitive value of obj. Converts Java object of a boxed type to its primitive counterpart. A Java object that is a counterpart of a primitive type of the value parameter. Destination for the primitive value of obj. Converts Java object of a boxed type to its primitive counterpart. A Java object that is a counterpart of a primitive type of the value parameter. Destination for the primitive value of obj. Converts Java object of a boxed type to its primitive counterpart. A Java object that is a counterpart of a primitive type of the value parameter. Destination for the primitive value of obj. Converts Java object of a boxed type to its primitive counterpart. A Java object that is a counterpart of a primitive type of the value parameter. Destination for the primitive value of obj. Converts Java object of a boxed type to its primitive counterpart. A Java object that is a counterpart of a primitive type of the value parameter. Destination for the primitive value of obj. Defines a single method to register with a Java class using AndroidJNI.RegisterNatives. The pointer to the native function that is called from the Java code. The name of the Java method implemented by the corresponding native function. The JNI method signature string that represents the parameters and return type of the Java method. AndroidJNI module allows you to call Java code.