Info List of JNI methods

Description

Java Native Interface (JNI) allows Java code to interact with native applications and libraries written in Rust, C, C++ and assembly

Improper use of the Java Native Interface renders the application vulnerable to security flaws present in other programming languages, like memory corruption.

Recommendation

Native code must adhere to Secure Coding best practices to protect against vulnerabilities in unmanaged code like memory corruption.

Technical details

File lib/x86/libunity.so:

MethodSignatureAddress
pauseARCore()V0xeeb3d4
resumeARCore()V0xeeb3e0
nativeDone()V0xeeb418
nativeSendSurfaceChangedEvent()V0xeeb43c
nativeResume()V0xeeb454
nativeLowMemory()V0xeeb460
nativeSoftInputClosed()V0xeeb490
nativeSoftInputCanceled()V0xeeb49c
nativeSoftInputLostFocus()V0xeeb4a8
nativeRestartActivityIndicator()V0xeeb4f0
nativeProxyLogJNIInvokeException()V0xeeb514
initCamera2Jni()V0xeeb5ac
initVrJni()V0xeeb690
headerCallback(JLjava/lang/String;Ljava/lang/String;)V0xece65c
uploadCallback(JLjava/nio/ByteBuffer;)I0xece668
contentLengthCallback(JI)V0xece674
responseCodeCallback(JI)V0xece698
downloadCallback(JLjava/nio/ByteBuffer;I)Z0xece680
validateCertificateCallback(J[B)Z0xece68c
errorCallback(JILjava/lang/String;)V0xece6a4
nativeProxyFinalize(I)V0xeeb508
initializeARCore(Landroid/app/Activity;)V0xeeb3c8
initJni(Landroid/content/Context;)V0xeeb40c
nativePause()Z0xeeb424
nativeRender()Z0xeeb448
nativeIsAutorotationOn()Z0xeeb4d8
isQuiting()Z0xeeb6a8
nativeRecreateGfxState(ILandroid/view/Surface;)V0xeeb430
nativeFocusChanged(Z)V0xeeb46c
nativeMuteMasterAudio(Z)V0xeeb4e4
nativeSetInputString(Ljava/lang/String;)V0xeeb478
nativeSetInputSelection(II)V0xeeb484
nativeInitWebRequest(Ljava/lang/Class;)V0xeeb4b4
nativeInjectEvent(Landroid/view/InputEvent;)Z0xeeb4c0
nativeUnitySendMessage(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V0xeeb4cc
nativeProxyInvoke(ILjava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;0xeeb4fc
fmodGetInfo(I)I0xef2f1c
nativeFrameReady(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;III)V0xeeb5b8
nativeSurfaceTextureReady(Ljava/lang/Object;)V0xeeb5c4
setVrVideoTransform([[F)V0xeeb69c
fmodProcessMicData(Ljava/nio/ByteBuffer;I)I0xef2f34
fmodProcess(Ljava/nio/ByteBuffer;)I0xef2f28

File lib/arm64-v8a/libunity.so:

MethodSignatureAddress
s()Ljava/util/Properties;0x8e7686

File lib/armeabi-v7a/libmain.so:

MethodSignatureAddress
load(Ljava/lang/String;)Z0x500c
unload()Z0x5018

File lib/armeabi-v7a/libnative-googlesignin.so:

MethodSignatureAddress
nativeOnResult(JILcom/google/android/gms/auth/api/signin/GoogleSignInAccount;)V0x25390

File lib/armeabi-v7a/libunity.so:

MethodSignatureAddress
"P(Ljava/lang/String;I)V0x43620c
headerCallback(JLjava/lang/String;Ljava/lang/String;)V0xb9a8d0
uploadCallback(JLjava/nio/ByteBuffer;)I0xb9a8dc
contentLengthCallback(JI)V0xb9a8e8
responseCodeCallback(JI)V0xb9a90c
downloadCallback(JLjava/nio/ByteBuffer;I)Z0xb9a8f4
validateCertificateCallback(J[B)Z0xb9a900
errorCallback(JILjava/lang/String;)V0xb9a918
initializeARCore(Landroid/app/Activity;)V0xbb6fa0
pauseARCore()V0xbb6fac
resumeARCore()V0xbb6fb8
nativeDone()V0xbb6ff0
nativeSendSurfaceChangedEvent()V0xbb7014
nativeResume()V0xbb702c
nativeLowMemory()V0xbb7038
nativeSoftInputClosed()V0xbb7068
nativeSoftInputCanceled()V0xbb7074
nativeSoftInputLostFocus()V0xbb7080
nativeRestartActivityIndicator()V0xbb70c8
nativeProxyLogJNIInvokeException()V0xbb70ec
initCamera2Jni()V0xbb7184
initVrJni()V0xbb7268
initJni(Landroid/content/Context;)V0xbb6fe4
nativePause()Z0xbb6ffc
nativeRender()Z0xbb7020
nativeIsAutorotationOn()Z0xbb70b0
isQuiting()Z0xbb7280
nativeRecreateGfxState(ILandroid/view/Surface;)V0xbb7008
nativeFocusChanged(Z)V0xbb7044
nativeMuteMasterAudio(Z)V0xbb70bc
nativeSetInputString(Ljava/lang/String;)V0xbb7050
nativeSetInputSelection(II)V0xbb705c
nativeInitWebRequest(Ljava/lang/Class;)V0xbb708c
nativeInjectEvent(Landroid/view/InputEvent;)Z0xbb7098
nativeUnitySendMessage(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V0xbb70a4
nativeProxyInvoke(ILjava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;0xbb70d4
nativeProxyFinalize(I)V0xbb70e0
fmodGetInfo(I)I0xbbebf4
nativeFrameReady(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;III)V0xbb7190
nativeSurfaceTextureReady(Ljava/lang/Object;)V0xbb719c
setVrVideoTransform([[F)V0xbb7274
fmodProcess(Ljava/nio/ByteBuffer;)I0xbbec00
fmodProcessMicData(Ljava/nio/ByteBuffer;I)I0xbbec0c

File lib/x86/libmain.so:

MethodSignatureAddress
load(Ljava/lang/String;)Z0x204c
unload()Z0x2058

File lib/x86/libnative-googlesignin.so:

MethodSignatureAddress
nativeOnResult(JILcom/google/android/gms/auth/api/signin/GoogleSignInAccount;)V0x4a3d0