Android应用程序中的C / C ++代码如何执行?

Jan*_*rda 3 c c++ java android opencv

我正在开发一个使用OpenCV进行一些密集的计算机视觉操作的Android应用。在这一点上,我想知道如果我使用C / C ++而不是Java进行视觉处理,是否可以获得更好的性能。该应用程序的其余部分使用Android Studio用Java编写。

我很困惑如何在Android设备上编译和运行C / C ++代码。由于Java应用程序在Android平台上的JVM上运行,因此我不太了解如何为JVM编译C / C ++代码以及如何运行这些代码。

我在考虑是否编译C / C ++代码以便它可以在JVM中运行,使用它的目的是什么,因为它仍在VM中运行并且不直接针对设备CPU?

小智 6

NDK用于C / C ++编码。它提高了应用程序性能。NDK通常适用于许多处理器绑定的应用程序

本机代码(C / C ++)被编译为二进制代码,并直接在OS上运行。Java代码被转换为Java字节码以在JVM上运行。

您可以使用NDK来编程 C / C ++应用程序。您也可以使用QT for andriod开发C / C ++应用程序