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

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...

Full description

Saved in:
Bibliographic Details
Main Authors: Alison de Oliveira Venâncio, Thales Ruano Barros de Souza, Bruno Raphael Cardoso Dias
Format: Article
Language:English
Published: Institute of Technology and Education Galileo da Amazônia 2025-01-01
Series:ITEGAM-JETIA
Online Access:http://itegam-jetia.org/journal/index.php/jetia/article/view/1310
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1825207075214458880
author Alison de Oliveira Venâncio
Thales Ruano Barros de Souza
Bruno Raphael Cardoso Dias
author_facet Alison de Oliveira Venâncio
Thales Ruano Barros de Souza
Bruno Raphael Cardoso Dias
author_sort Alison de Oliveira Venâncio
collection DOAJ
description 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.
format Article
id doaj-art-fe64e350d177420195d4d10f0078c336
institution Kabale University
issn 2447-0228
language English
publishDate 2025-01-01
publisher Institute of Technology and Education Galileo da Amazônia
record_format Article
series ITEGAM-JETIA
spelling doaj-art-fe64e350d177420195d4d10f0078c3362025-02-06T23:51:53ZengInstitute of Technology and Education Galileo da AmazôniaITEGAM-JETIA2447-02282025-01-01115110.5935/jetia.v11i51.1310Comparative evaluation between Java application using JNI and native C/C++ application running on an Android platform.Alison de Oliveira Venâncio0Thales Ruano Barros de Souza1Bruno Raphael Cardoso Dias2Instituto de Pesquisas EldoradoInstituto de Pesquisas EldoradoInstituto de Pesquisas Eldorado 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. http://itegam-jetia.org/journal/index.php/jetia/article/view/1310
spellingShingle Alison de Oliveira Venâncio
Thales Ruano Barros de Souza
Bruno Raphael Cardoso Dias
Comparative evaluation between Java application using JNI and native C/C++ application running on an Android platform.
ITEGAM-JETIA
title Comparative evaluation between Java application using JNI and native C/C++ application running on an Android platform.
title_full Comparative evaluation between Java application using JNI and native C/C++ application running on an Android platform.
title_fullStr Comparative evaluation between Java application using JNI and native C/C++ application running on an Android platform.
title_full_unstemmed Comparative evaluation between Java application using JNI and native C/C++ application running on an Android platform.
title_short Comparative evaluation between Java application using JNI and native C/C++ application running on an Android platform.
title_sort comparative evaluation between java application using jni and native c c application running on an android platform
url http://itegam-jetia.org/journal/index.php/jetia/article/view/1310
work_keys_str_mv AT alisondeoliveiravenancio comparativeevaluationbetweenjavaapplicationusingjniandnativeccapplicationrunningonanandroidplatform
AT thalesruanobarrosdesouza comparativeevaluationbetweenjavaapplicationusingjniandnativeccapplicationrunningonanandroidplatform
AT brunoraphaelcardosodias comparativeevaluationbetweenjavaapplicationusingjniandnativeccapplicationrunningonanandroidplatform