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/armeabi-v7a/libfb.so:

MethodSignatureAddress
dispose()V0x1000c

File lib/armeabi-v7a/libimagepipeline.so:

MethodSignatureAddress
nativeTranscodeJpeg(Ljava/io/InputStream;Ljava/io/OutputStream;III)V0x3a00c
nativePinBitmap(Landroid/graphics/Bitmap;)V0x3a01c
nativeReleaseByteBuffer(Landroid/graphics/Bitmap;)V0x3a040
nativeCopyBitmap(Landroid/graphics/Bitmap;ILandroid/graphics/Bitmap;II)V0x3a028
nativeGetByteBuffer(Landroid/graphics/Bitmap;JJ)Ljava/nio/ByteBuffer;0x3a034
nativeAllocate(I)J0x3a04c
nativeFree(J)V0x3a058
nativeCopyToByteArray(J[BII)V0x3a064
nativeCopyFromByteArray(J[BII)V0x3a070
nativeMemcpy(JJI)V0x3a07c
nativeReadByte(J)B0x3a088

File lib/x86/libimagepipeline.so:

MethodSignatureAddress
nativePinBitmap(Landroid/graphics/Bitmap;)V0x76028
nativeReleaseByteBuffer(Landroid/graphics/Bitmap;)V0x7604c
nativeAllocate(I)J0x76088
nativeFree(J)V0x76094
nativeCopyToByteArray(J[BII)V0x760a0
nativeCopyFromByteArray(J[BII)V0x760ac
nativeMemcpy(JJI)V0x760b8
nativeReadByte(J)B0x760c4
nativeTranscodeJpeg(Ljava/io/InputStream;Ljava/io/OutputStream;III)V0x7600c
nativeCopyBitmap(Landroid/graphics/Bitmap;ILandroid/graphics/Bitmap;II)V0x76034
nativeGetByteBuffer(Landroid/graphics/Bitmap;JJ)Ljava/nio/ByteBuffer;0x76040