当前位置: 首页 > news >正文

台州做网站哪家好软文技巧

台州做网站哪家好,软文技巧,中文域名 怎么做网站,广告设计与制作专业可以考二建吗目录 1.什么是JNI 2.配置JNI开发环境NDK 3.创建Native C类型的项目 4. 了解CMakeLists.txt 文件 5.了解native-lib.cpp 文件 6.在 Android 的 MainActivity 中调用 native-lib.cpp 中实现的本地方法 1.什么是JNI JNI(Java Native Interface)是一…

目录

1.什么是JNI  

2.配置JNI开发环境NDK

3.创建Native C++类型的项目

4. 了解CMakeLists.txt 文件

5.了解native-lib.cpp 文件

6.在 Android 的 MainActivity 中调用 native-lib.cpp 中实现的本地方法


1.什么是JNI  

      JNI(Java Native Interface)是一种允许Java代码与本地代码(如C或C++)进行交互的技术。它提供了一种机制,使得Java应用程序可以调用本地方法或库,并允许本地代码访问Java应用程序中的对象和方法。

2.配置JNI开发环境NDK

打开Android Studio,点击“Tools”,转到“SDK Manager”,选择“SDK Tools”选项卡,并选中“NDK”和“CMake”进行安装。

3.创建Native C++类型的项目

      你可以创建一个 Android 的 Native C++ 项目,并在其中编写 C++ 代码,并使用 JNI 接口与 Java 代码进行交互。这样你就可以充分利用 C++ 的性能优势,并与 Android 平台进行无缝集成。

其中在 src/main/cpp 目录下

CMakeLists.txt 文件:该文件是用于配置和管理你的 C++ 代码构建过程的主要文件。

native-lib.cpp 文件:你可以在native-lib.cpp 文件里面来实现你的 C++ 代码逻辑。

MainActivity: 中调用 native-lib.cpp 中实现的本地方法

4. 了解CMakeLists.txt 文件

CMakeLists.txt 文件是一个文本文件,用于配置和管理 CMake 构建系统的行为。

#cmake最低版本要求
cmake_minimum_required(VERSION 3.22.1)project("jni_test")# 配置so库编译信息
add_library(# 输出so库的名称jni_test# 设置生成库的方式,默认为SHARE动态库SHARED# 列出参与编译的所有源文件native-lib.cpp)# 查找代码中使用到的系统库
find_library(log-liblog)# 指定编译目标库时,cmake要链接的库
target_link_libraries(# 指定目标库,native-lib 是在上面 add_library 中配置的目标库jni_test# 列出所有需要链接的库${log-lib})

常用的命令有:

1.指定 CMake 的最低版本要求。

#cmake最低版本要求
cmake_minimum_required(VERSION 3.22.1)

2.使用 project 命令来指定项目的名称和版本。

project("jni_test")

3. 通过 set 方法定义了 so 头文件 所在目录。

其中 CMAKE_SOURCE_DIR 为系统变量,指向 CMakeLists.txt 所在目录。
set(OPENCV_LIBS_DIR ${CMAKE_SOURCE_DIR}/../opencv_include)

4.引入其他模块。

include_directories(${OPENCV_LIBS_DIR})

5.添加源文件。

#opencv
add_library(libopencv_java3SHAREDIMPORTED )

6.set_target_properties 命令可以指定构建结果的输出路径、名称等。

其中ANDROID_ABI 是系统变量,指 向 so 对应的 CPU 框架目录:armeabiarmeabi-v7a、x86 ...

set_target_properties(libopencv_java3PROPERTIES IMPORTED_LOCATION${OPENCV_LIBS}/${ANDROID_ABI}/libopencv_java3.so )

7.  target_link_libraries 命令,你可以指定要链接到项目中的静态库或动态库。

target_link_libraries( jni_testlibopencv_java3${log-lib})

5.了解native-lib.cpp 文件

native-lib.cpp 文件中的内容可以根据你的需求具体编写,但通常会包含以下部分:

  1. 包含头文件。

    #include <jni.h>
    #include <string>
  2. 实现本地方法:在 native-lib.cpp 文件中,你需要实现在 JNI 接口文件中声明过的本地方法。这些方法将从 Java 代码中调用。

    extern "C" JNIEXPORT jstring JNICALL
    Java_com_example_jni_1test_MainActivity_stringFromJNI(JNIEnv* env,jobject /* this */) {std::string hello = "Hello from C++";return env->NewStringUTF(hello.c_str());
    }
     

    在上述例子中,我们实现了一个名为stringFromJNI 的本地方法,它返回一个字符串给调用方。

6.在 Android 的 MainActivity 中调用 native-lib.cpp 中实现的本地方法


public class MainActivity extends AppCompatActivity {static {System.loadLibrary("jni_test");}@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);//省略}public native String stringFromJNI();
}

native-lib.cpp 中的本地方法stringFromJNI () 在 Java 中以相同的方法名进行调用。

http://www.ds6.com.cn/news/46987.html

相关文章:

  • 做海报的网站推荐网络营销推广方式包括哪些
  • 网站做水印有没有影响宁波seo公司排名
  • 宣传网站模板营销培训总结
  • 英文网站建设 招标微营销是什么
  • 建站之星平台武汉官网优化公司
  • 王也高清壁纸图片网站推广优化招聘
  • 做视频网站广告收费谷歌play商店
  • 免费seo网站诊断高端网站定制公司
  • 什么网站从做系统网络营销的职能有哪些
  • 京东网站设计代码seo长尾关键词排名
  • 做ppt介绍网站网站编辑怎么做
  • 信誉好的大良网站建设互联网推广渠道
  • 企业公司网站制作admin5站长网
  • 敦煌网网站推广方式百度网盘登录首页
  • 厦门seo网站关键词优推广免费网站制作app
  • 中山免费建站成品短视频app下载有哪些
  • 长沙官网seo技巧seo文章推广
  • 济南富腾网站建设广州番禺发布
  • 甘肃做网站的公司有哪些线上推广渠道主要有哪些
  • 深圳市升华建设有限公司网站seo搜索引擎是什么
  • 重庆网络推广网站阿里指数官网
  • 免费微信点餐小程序百中搜优化软件
  • 网站代做多长时间营销课程培训都有哪些
  • 青海商城网站建设松原新闻头条
  • 苏州网站开发公司招聘信息一个产品的网络营销方案
  • 网站开发就业培训班如何写好一篇软文
  • 网站 php java短视频seo代理
  • 做淘宝美工需要知道的网站360优化大师安卓版下载
  • 电商数据平台做网络优化哪家公司比较好
  • 给我做网站的人老是给我留点尾巴大学生网页制作成品模板