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

阿里巴巴网站建设改图片品牌建设的十六个步骤

阿里巴巴网站建设改图片,品牌建设的十六个步骤,做烧烤的网站,黄骅港赶海推荐个好地方目录 一、JNI动态注册是什么#xff1f; 二、JNI动态注册使用步骤 1.新增gMethods数组和JNI_OnLoad函数 2.完整HelloWorld.cpp 3.运行测试 总结 一、JNI动态注册是什么#xff1f; 静态注册的情况下#xff0c;java调用的接口和jni层实现的接口有强制的一一对应关系 二、JNI动态注册使用步骤 1.新增gMethods数组和JNI_OnLoad函数 2.完整HelloWorld.cpp 3.运行测试 总结 一、JNI动态注册是什么 静态注册的情况下java调用的接口和jni层实现的接口有强制的一一对应关系jni层的接口名必须是java_包名_函数名但是动态注册情况下jni的函数名可以自定义然后通过数组数定义java函数名和jni函数名的对应关系。 二、JNI动态注册使用步骤 1.新增gMethods数组JNI_OnLoad函数修改jni接口名 //函数名从Java_HelloWorld_sayhello改为Dynamic_Java_HelloWorld_sayhello JNIEXPORT void JNICALL Dynamic_Java_HelloWorld_sayhello(JNIEnv *, jobject) {printf(cpp say hello world\n); }//gMethods定义了java接口和jni接口的对应关系 static JNINativeMethod gMethods[] {{sayhello,()V,(void*)Dynamic_Java_HelloWorld_sayhello} };//JNI_OnLoad会在java层动态加载库System.loadLibrary()的时候调用 jint JNI_OnLoad(JavaVM* vm,void* reserved) {JNIEnv *envNULL;jint result -1;if(vm-GetEnv((void**)env,JNI_VERSION_1_4)!JNI_OK){return -1;}//通过反射机制找到HelloWorld类char className[20]{HelloWorld};jclass clazzenv-FindClass((const char*)className);//为HelloWorld类定义jni函数调用关系if(env-RegisterNatives(clazz,gMethods,1)0){return -1;}//默认JNI_VERSION_1_1是不支持JNI_OnLoad的所以要返回JNI_VERSION_1_4resultJNI_VERSION_1_4;printf(JNI_ONload\n);return result;}2.完整HelloWorld.cpp #include jni.h #include stdio.h #include HelloWorld.h#ifdef __cplusplus extern C { #endif /** Class: HelloWorld* Method: sayhello* Signature: ()V*/ JNIEXPORT void JNICALL Dynamic_Java_HelloWorld_sayhello(JNIEnv *, jobject) {printf(cpp say hello world\n); }static JNINativeMethod gMethods[] {{sayhello,()V,(void*)Dynamic_Java_HelloWorld_sayhello} };jint JNI_OnLoad(JavaVM* vm,void* reserved) {JNIEnv *envNULL;jint result -1;if(vm-GetEnv((void**)env,JNI_VERSION_1_4)!JNI_OK){return -1;}char className[20]{HelloWorld};jclass clazzenv-FindClass((const char*)className);if(env-RegisterNatives(clazz,gMethods,1)0){return -1;}resultJNI_VERSION_1_4;printf(JNI_ONload\n);return result;}#ifdef __cplusplus } #endif3.运行测试 #编译 gcc HelloWorld.cpp --shared -I$JAVA_HOME/include -I$JAVA_HOME/include/linux -fPIC#运行 java HelloWorld #输出 #JNI_ONload #cpp say hello world #call jni sayhello 总结 动态注册可以自由的定义jni接口。
http://www.pierceye.com/news/39632/

相关文章:

  • 成都住房和城乡建设局 网站首页可以做甩货的电商网站
  • 提升网站安全热搜榜排名前十
  • 桃源县建设局网站学校校园网站 资源建设方案
  • 网络传销是否传销网站优化过度的表现
  • 网站建设中最重要的网站找回备案密码怎么不对
  • 网站页面架构怎么写网站上的搜索功能是怎么做的
  • 百度医院网站建设wordpress_ joomla_ drupal
  • 哪些网站可以免费申请河北建设厅网站修改密码在哪里
  • 点个赞科技 网站制作哈尔滨建设网站
  • 双云官方网站怎么做网页二维码
  • 长春星宿网站建设公司怎么样网站页面建议
  • 免费的网站空间设计动画公司
  • 甘肃建设项目公示网站杭州网站建设公司有哪些
  • 大型网站开发项目书籍php网站源码免费下载
  • 如何设计响应式网站中小微企业纳税申报
  • 达建网站网站设计中 查询怎么做
  • 国外网络营销网站没经验的人开什么店好
  • 做报废厂房网站怎么做seo关键词排名技术
  • 35网站建设微网站对比
  • 网站开发方面的岗位找做网站页的在哪找
  • 深圳网站设计专家乐云seo品牌湖南系统建站怎么用
  • 建设银行网站打不开用什么浏览器重写路由 wordpress
  • 深圳最简单的网站建设东莞开发游戏软件公司
  • 做棋牌网站建设哪家好网站建设团队扬州
  • 网站界面设计总结建设国家标准官方网站
  • 天津设计网站建设免费网络课程教学平台
  • 网站开发工程师和软件工程小程序广告平台
  • 百度站长网站提交天津模板做网站
  • 特效素材免费网站方法数码做的网站怎么样
  • 页面设计的网站动漫制作专业学什么课程