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

陇南市建设局网站做绒毛鉴定网站

陇南市建设局网站,做绒毛鉴定网站,西部数码创建php网站,wordpress 常用工具最近花了一周时间来入门学习 Android JNI方面的知识,因为后续的工作很多需要用到c c++库,我需要用jni来包装一下c函数,来提供给上次java调用。总之多学点知识对自己有好处。 案例效果: 上文我们讲解了 android studio cmake生成.a文件(静态库)及调用(c c++)静态库.a 本文…最近花了一周时间来入门学习 Android JNI方面的知识,因为后续的工作很多需要用到c c++库,我需要用jni来包装一下c函数,来提供给上次java调用。总之多学点知识对自己有好处。 案例效果: 上文我们讲解了 android studio cmake生成.a文件(静态库)及调用(c c++)静态库.a 本文接着上文,这次我们利用JNI 来引用第三方动态库so文件,并且让Java调用它的函数。 第一步:生成.so动态库文件 编写C文件和头文件 DynamicLibraryTest.h // // Created by Administrator on 2023/9/5/005. //#ifndef ANDROIDCMAKE_DYNAMICLIBRARYTEST_H #define ANDROIDCMAKE_DYNAMICLIBRARYTEST_H#endif //ANDROIDCMAKE_DYNAMICLIBRARYTEST_Hint dynamicAdd(int a,int b,int c);char * getDynamicName(char * firstName,char * lastName);DynaminLibraryTest.cpp // // Created by Administrator on 2023/9/5/005. //#include "../include/static/DynamicLibraryTest.h" #include stdio.h #include stdlib.h #include string.hint dynamicAdd(int a,int b,int c){return a+b+c; }char * getDynamicName(char * firstName,char * lastName){char *name = (char *) malloc(strlen(firstName) + strlen(lastName));strcpy(name, firstName); // 把firstName复制到name中strcat(name, lastName); // 把lastName追加到name中return name; }编写CmakeLists文件 add_library(${CMAKE_PROJECT_NAME} SHARED src/DynaminLibraryTest.cpp )make project之后,生成了.so动态库文件。 生成动态库之后,我把文件复制到了jni目录下面. 第二步:JNI动态注册.so动态库中的函数 编写cmakeList文件 cmake_minimum_required(VERSION 3.22.1)project("cmake")add_library(${CMAKE_PROJECT_NAME} SHAREDnative-lib.cppsrc/libtest.c# 编写动态库用到的文件,已经生成了deynaminLibraryTest.so文件就注释掉这个代码 # src/DynaminLibraryTest.cpp )#导入已经编译好的第三方静态库 或者 动态库 本例导入的静态库 add_library(calStatic STATIC IMPORTED) #设置静态库(.a)导入的路径 set_target_properties(calStatic PROPERTIES IMPORTED_LOCATION${CMAKE_CURRENT_SOURCE_DIR}/jni/${CMAKE_ANDROID_ARCH_ABI}/libcalStatic.a )#添加第三方 动态库 add_library(dynamicLibraryTest SHARED IMPORTED) #设置动态库(.so)导入的路径 set_target_properties(dynamicLibraryTest PROPERTIES IMPORTED_LOCATION${CMAKE_CURRENT_SOURCE_DIR}/jni/${CMAKE_ANDROID_ARCH_ABI}/libdynamicLibraryTest.so)#通过target_link_libraries命令指明库文件,且通过target_include_directories命令指明相应的库头文件 target_include_directories(${CMAKE_PROJECT_NAME} PUBLIC ${PROJECT_SOURCE_DIR}/include/static/) #需要链接或者编译的库 target_link_libraries(${CMAKE_PROJECT_NAME}# List libraries link to the target libraryandroid# 第三方静态库。calStatic# 第三方动态库dynamicLibraryTestlog)JNI动态注册函数 #include jni.h
http://www.zqtcl.cn/news/483471/

相关文章:

  • 广州专业的网站建设公司镇海seo关键词优化费用
  • 网站建设英文字体格式网络技术培训内容
  • 郑州公司网站设计在西宁做网站可以吗
  • 做最好的言情网站南通优普营销网站建设
  • 毕业设计网站可以做什么辽宁省建设厅网站更新
  • 同城信息网站建设牡丹江网站推广
  • 四川省城乡住房建设部网站首页商丘网站制作公司一二三网络推广
  • asp网站开发全程视频免费发布招聘信息平台
  • 机械网站建设开发网站如何做收录排行
  • 成都市学校网站建设怎样做网站二维码
  • 网站建设企业电话在线照片处理编辑器
  • 长沙建设网站企业wordpress 亲子模板下载
  • 济南seo整站优化价格织梦网站做404页面
  • 石家庄做标书的网站如何选取网站关键词
  • 摄影作品网站推荐wordpress用插件注册
  • pc端兼手机端网站模板中国网站 服务器
  • 江宁区建设工程局网站做网站满屏的照片尺寸是多少
  • 中国设计师网站网站开发需要什么专业的人才
  • 制作网站第一步龙海建设局网站
  • 网站建设的业务规划资源分享类网站模板
  • app与网站数据交互忻州集团网站建设
  • 个人网站有必要备案吗专业建站哪家好
  • 网站代码软件WordPress 编辑器2016
  • 网站建设与制作教学计划重庆本地建站
  • 动漫做视频在线观看网站宝安做小程序有推荐吗
  • 落伍者论坛 做网站成都关键词自然排名
  • 太原这边有做网站的吗wordpress下载类主题
  • 个人网站制作 教程兰州网站分类导航
  • 官方静态网站模板下载小说盗版网站怎么做
  • php网站开发就业wordpress 调整配置文件