Comparative evaluation between Java application using JNI and native C/C++ application running on an Android platform.

Authors

DOI:

https://doi.org/10.5935/jetia.v11i51.1310

Abstract

Android is a popular operating system based on the Linux kernel and has a Java-based framework. As it is built on Linux, it supports the development of applications written in C/C++, known as native applications. The Native Development Kit (NDK), along with the Java Native Interface (JNI), provides a solution for communication between Java applications and native C/C++ applications, resulting in a significant performance boost. This article evaluated the performance difference between Java applications using JNI with the NDK and native C/C++ applications, focusing on algorithms widely used in various areas such as automation, networking, telecom, cybersecurity, etc. We conducted sequence of executions initiated either through a graphical interface or via the Android Debug Bridge (ADB) command line, with timing performed by external hardware with its own firmware for this evaluation. Based on the results, we observed that in all test cases, the native application performs faster, except when there are variations related to process scheduling, which may rarely lead to a reversal of this pattern.

Downloads

Download data is not yet available.

Downloads

Published

2025-01-29

Issue

Section

Articles

How to Cite

Comparative evaluation between Java application using JNI and native C/C++ application running on an Android platform. (2025). ITEGAM-JETIA, 11(51), 20-27. https://doi.org/10.5935/jetia.v11i51.1310