将C ++应用程序(无接口,只有算法)移植到Android吗?

时间:2019-05-14 09:13:39

标签: java android c++

你好!
我学习计算机科学,并且在实习2个月。我必须使用标准模板库将C ++应用程序移植到Android。
该应用程序没有接口,只是C ++中的算法(非常面向对象)。标头和cpp文件有多个,其中一个main.cpp文件和一个文件夹,用于存储计算所需的资源(与GPS信息有关)。
我进行了很多搜索,并找到了一些解决方案:
-使用“ C ++ to Java Converter”之类的工具翻译Java中的所有代码,可能效率不高,对此我不确定。
-创建一个C ++编译的库并将其添加到Android Studio项目中:这似乎是一个不错的计划,但我不知道该怎么做。他们在谈论使用JNI的SWIG或Android Native Development Toolkit,但我读到它只有在用于开发Android应用程序的一小部分时才有效。

希望您能提供帮助,因为我的时间很少,所以这是我课程的第一部分...

1 个答案:

答案 0 :(得分:1)

可能不需要翻译...

  

您可以通过将C和C ++代码添加到Android项目中,方法是将代码放入项目模块中的cpp目录中。在构建项目时,此代码将编译到Gradle可以将其与APK打包在一起的本机库中。然后,您的Java或Kotlin代码可以通过Java本机接口(JNI)调用本机库中的函数。要了解有关使用JNI框架的更多信息,请阅读Android的JNI技巧。

您可以在此link

中找到更多信息