首页 > 其他分享 >JNI DEMO

JNI DEMO

时间:2024-08-27 10:38:04浏览次数:15  
标签:java String DEMO void HelloJNI helloJNI JNI include

 

 

 

make.sh

javac -h . HelloJNI.java
g++  -I"$JAVA_HOME/include" -I"$JAVA_HOME/include/dawin" -shared -o  libhelloJNI.dylib HelloJNI.cpp
javac HelloJNI.java
java HelloJNI

 

HelloJNI.java

public class HelloJNI {
    private native void helloJNI(String  param);

    static{
        System.loadLibrary("helloJNI");
    }
    public static void main(String[] args) {
        HelloJNI jni = new HelloJNI();
        jni.helloJNI("888888");
    }

}

HelloJNI.h

/* DO NOT EDIT THIS FILE - it is machine generated */
#include <jni.h>
/* Header for class HelloJNI */

#ifndef _Included_HelloJNI
#define _Included_HelloJNI
#ifdef __cplusplus
extern "C" {
#endif
/*
 * Class:     HelloJNI
 * Method:    helloJNI
 * Signature: (Ljava/lang/String;)V
 */
JNIEXPORT void JNICALL Java_HelloJNI_helloJNI
  (JNIEnv *, jobject, jstring);

#ifdef __cplusplus
}
#endif
#endif

  HelloJNI.cpp

#include "HelloJNI.h"
#include <iostream> 
using namespace std;
JNIEXPORT void JNICALL Java_HelloJNI_helloJNI
  (JNIEnv *env, jobject ,jstring param)
{
   // 1. 获取C风格的字符串
    const char *cstr = env->GetStringUTFChars(param, 0);
    cout <<endl <<"Hello,JNI "<<cstr  <<endl ;
}

  

 

标签:java,String,DEMO,void,HelloJNI,helloJNI,JNI,include
From: https://www.cnblogs.com/luoxh-whn/p/18382183

相关文章

  • echarts 地图 显示某一个省的地图,点击可进入市 点击空白可返回上级 - 内蒙古demo
    我这里echarts用的4.5.0官网https://echarts.apache.org/v4/examples/zh/index.html#chart-type-map获取地图json数据工具https://datav.aliyun.com/portal/school/atlas/area_selector<!DOCTYPEhtml><!--获取地图地址--><!--https://datav.aliyun.com/portal/school......
  • Qt+OpenCascade开发笔记(二):Qt引入occ库,搭建工程模板发布Demo
    前言  OpenCASCADE是由OpenCascadeSAS公司开发和支持的开源软件开发平台,旨在为特定领域快速开发程序而设计。它是一个面向对象的C++类库,提供了丰富的几何造型、数据交换和可视化等功能,成为许多CAD软件的核心组件。  本篇描述搭建Qt开发occ环境过程。Demo  注意......
  • Android车载蓝牙音乐实例(附Demo源码):实现手机播放音乐后车机应用显示音乐名称,歌手,专辑
    一、功能需求功能需求是在Android10以上设备上实现蓝牙音乐功能,细分为两个功能点:1、手机和车载设备实现蓝牙连接(本Demo文只做监听蓝牙连接状态,需手动到设置中连接蓝牙)2、连接蓝牙成功后手机播放音乐时车载设备也能播放音乐,并且在车机应用上显示音乐名称,歌手,专辑名。可在车......
  • lvgl 使用demo
    实现效果  代码#defineOBJ_PARENT_WIDTH970#defineOBJ_PARENT_HEIGH446#defineOBJ_BTN_WIDTH150#defineOBJ_BTN_HEIGH50#defineOBJ_BTN_POS_X120#defineOBJ_BTN_POS_Y40#defineOBJ_ITEM_WIDTH420#defineOBJ_ITEM_H......
  • 多线程入门Demo
    packagerun;importjava.util.ArrayList;importjava.util.List;importjava.util.concurrent.CompletionService;importjava.util.concurrent.ExecutionException;importjava.util.concurrent.ExecutorCompletionService;importjava.util.concurrent.Future;impo......
  • 【PHP安全】demo3:最简单的php代码加密方法
    当我们说"PHP代码加密",我理解的是将PHP代码进行混淆或加密,以防止源代码被他人轻易阅读或修改。这种需求通常用于保护商业秘密或加强代码安全性。常见的工具是使用专业的编译器和加密工具。然而,请注意,完全保护代码是不可能的,因为最终服务器仍然需要能够执行解密后的代码。以......
  • 6D位姿检测FoundationPose demo测试
    Papertitle:FoundationPose:Unified6DPoseEstimationandTrackingofNovelObjectsPaperlink:https://arxiv.org/abs/2312.08344Codelink:GitHub-NVlabs/FoundationPose:[CVPR2024Highlight]FoundationPose:Unified6DPoseEstimationandTrackingof......
  • 异步编程CompletableFuture的一些使用demo
      publicstaticThreadPoolExecutorexecutor=newThreadPoolExecutor(5,5,5L,TimeUnit.SECONDS,newLinkedBlockingQueue<>(1000),newThreadPoolExecutor.CallerRunsPolicy());publicstaticvoidmain(String[]args)throwsException{Complet......
  • 【实用】【一眼就会】【直接可用】文件上传 附件上传 前后端分离 分布式 多文件上传
    思路:1、先保存主要信息,存到数据库。2、查询这条数据的id、uid3、上传附件功能:根据id、uid、文件。请求:附件API接口。4、后端接口中:先判断登录状态,5、创建对应的文件夹并存入文件,文件夹名以id名命名。6、把附件名重命名,以uuid命名。7、把所有的文件路径放到集合里,传入id......
  • Unity FPSSample Demo研究
    1.前言 UnityFpsSampleDemo大约是2018发布,用于官方演示MLAPI(NetCode前身)+DOTS的一个FPS多人对战Demo。Demo下载地址(需要安装GitLFS):https://github.com/Unity-Technologies/FPSSample下载完成后3-40GB左右,若大小不对可能下载不完整。 时间原因写的并不完整,但大致描......