使用Android Studio的gradle构建将tess-two构建到项目中

Dal*_*ale 4 java-native-interface android-ndk android-gradle-plugin tess-two android-studio-2.2

有关将tess-two项目集成到Android Studio中的Android项目的答案,但许多已过时,并且没有使用此处定义的当前功能:

使用Android Studio 2.2及更高版本,您可以使用NDK将C和C++代码编译到本机库中,并使用IDE的集成构建系统Gradle将其打包到您的APK中.然后,您的Java代码可以通过Java Native Interface(JNI)调用本机库中的函数

tess-two使用Android Studio中的功能而不是外部文件放置,操作和命令行工具,将功能作为结果APK的一部分需要哪些具体步骤?因此,将构建,*.so文件创建到IDE中.具体而言仅使用Android Studio中集成构建系统如所描述的(摇篮)这里.

1.开始一个新项目

启动一个支持C++的新Android Studio项目

2.将Tess-Two导入项目中

将tess-two作为新项目中的模块导入

2B.添加任何所需的插件

添加到tess-two build.gradle以获取所需的插件

3.在主活动中添加代码以获取本机功能

静态导入tess-two本机文件

4.配置Android Studio构建,以便可以使用本机功能

这是需要具体细节的地方

Dal*_*ale 6

4. 为本机功能配置Android Studio构建

4A.使用Gradle链接C++项目

首先,检查tess-two项目的构建文件.您可以选择CMakeLists.txt或Android.mk文件.两者目前都受支持.

检查项目构建配置文件

在这种情况下,我使用ndk-build,这似乎是集成本机代码的好赌注.

链接C++项目

有关更多信息,请参阅Android Studio文档

4B.管理长命令

在Windows中,如果命令长度过大,可能会遇到错误.要防止出现问题,请在文件中使用LOCAL_SHORT_COMMANDSAND .APP_SHORT_COMMANDSAndroid.mk

添加减少命令长度的属性

这样做会出现"e = 87"错误:

参数错误错误87消息

有关该主题的更多信息,请参阅有关错误87的stackoverflow问题.

4C.为tess-two添加模块依赖关系

在" 文件">"项目结构">"依赖关系"中,使用+添加tess-two依赖关系:

添加tess-two作为依赖项

4D.构建项目并检查.so文件的.ap文件

构建需要很长时间,现在应该完成.验证该.apk文件是否包含.so在构建期间创建的文件.使用tess-two静态初始化程序中的库,在Android设备上运行项目:

apk文件与tess-two .so文件和运行测试应用程序