`
abc20899
  • 浏览: 928888 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JNI详解001_c++

 
阅读更多
public class HelloWorld {
   public native void print(String str);  //声明本地方法
   
   public static void main(String[] args) {
	   new HelloWorld().print("world!");
	   //System.out.println(System.getProperty("java.library.path"));
   }
   
   static{
	   //System.loadLibrary("helloworld"); // 加载库文件
	   System.load("/Users/zhaoshun/solibs/libhello.so");
   }
}

/**
 *  
 * Class:     jni_sample_HelloWorld
 * Method:    print
 * Signature: (Ljava/lang/String;)V
 *
  JNIEXPORT void JNICALL Java_jni_sample_HelloWorld_print(JNIEnv *, jobject, jstring);
 */



#include <iostream.h>
#include <jni.h>
#include "jni_sample_HelloWorld.h"
using namespace std;

JNIEXPORT void JNICALL Java_jni_sample_HelloWorld_print(JNIEnv *env, jobject obj, jstring name)
{
	const char* pname = env->GetStringUTFChars(name,NULL);
	cout <<"Hello,"<< pname << endl;
}

/*
c文件中的这么写的
str = (*env)->GetStringUTFChars(env,prompt,NULL);  
*/



编译
g++ -dynamiclib -o libhello.so HelloWorld.cpp -framework JavaVM -I/System/Library/Frameworks/JavaVM.framework/Headers


运行结果:
Hello,world!



分享到:
评论

相关推荐

    jni.rar_Android jni_JAVA串口 JNI_android_android RS232_jni

    《Android JNI串口通信实践详解》 在移动设备开发领域,Android系统因其开源特性与丰富的功能,成为开发者们的首选平台。然而,对于某些特定的硬件交互,如串口通信(RS232),原生Java API往往无法满足需求,这时...

    JniCallback.zip_Android jni_android_jni android_jni callback_jni

    JNI在很多场景下都非常有用,比如优化性能、使用现有的C/C++库、或者像在这个“JniCallback.zip”文件中所展示的,实现应用层与本地代码之间的回调功能。下面我们将深入探讨这个主题。 1. **JNI基础知识**: JNI是...

    hello-jni.rar_ android jni_android hello jni_android jni hellojn

    《Android NDK与JNI开发详解:从Hello-JNI入门》 Android系统以其开源性和灵活性吸引了大量的开发者,而JNI(Java Native Interface)则是Android平台中连接Java层与原生C/C++代码的重要桥梁。JNI允许开发者在...

    JNI.rar_JNI pdf_jni

    在JNI详解与实现的PDF文档中,可能会涵盖以下几个主要知识点: 1. **JNI基础知识**:介绍JNI的概念,它的历史,以及为何需要使用JNI。这通常包括Java平台的结构,如何在Java中创建本地方法,以及JNI头文件和库的...

    Android 深入研究JNI详解

    ### Android深入研究JNI详解 #### 一、JNI与Android中的.so库载入 在深入了解JNI(Java Native Interface)之前,我们需要明确一点:Android应用程序的主要部分是基于Java开发的,并且这些Java类会被编译成Dex格式...

    Android开发书籍 - JNI详解_导航版

    通过《Android开发书籍 - JNI详解》这本书,读者不仅能够学到如何使用JNI在Java项目中集成C/C++代码,还能了解到JNI设计背后的理念和原理。这对于想要在Android应用开发中利用底层系统资源或提升性能的开发者来说是...

    android_ndk_jni_dev_HelloNDK.zip

    《Android NDK与JNI开发详解:HelloNDK实践》 Android Native Development Kit(NDK)是Google提供的一款工具集,允许开发者在Android平台上使用C/C++编写原生代码,从而提高应用程序的性能和效率。JNI(Java ...

    java通过jni调vjoy_vjoy4java

    Java通过JNI调用Vjoy_vjoy4java是一个技术性较强的话题,涉及到多个关键知识点,包括Java本地接口(JNI)、Vjoy、游戏控制器编程以及C++编程。以下将逐一详解这些内容。 1. Java本地接口(JNI): Java本地接口...

    jni.rar_android_avilib_jni

    《Android平台上的JNI与avilib库的整合应用详解》 在Android开发中,JNI(Java Native Interface)是一种关键的技术,它允许Java代码与其他语言(如C++)进行交互,为高性能计算、系统调用或者利用已有的C/C++库...

    hello-oboe_jni_android_

    《Android平台下的JNI与Hello-Oboe音频库实践详解》 在移动开发领域,尤其是在Android平台上,有时我们需要处理一些性能敏感或与硬件直接交互的任务,这时JNI(Java Native Interface)技术就显得尤为重要。JNI允许...

    Android中的JNI的使用_1

    ### Android中的JNI使用详解 #### 一、JNI概念与作用 JNI,即Java Native Interface,是一种标准机制,自Java 1.1版本起被引入,旨在实现Java代码与其他编程语言如C、C++或汇编语言编写的代码之间的交互。在...

    jni详解高清pdf文档

    ### JNI详解:深入理解Java Native Interface #### 一、引言与翻译初衷 JNI(Java Native Interface)作为连接Java世界与本地C/C++世界的桥梁,其重要性不容小觑。本文旨在详细介绍Android环境下JNI的使用,帮助...

    jni.rar_cpp944_图像识别

    【JNI (Java Native Interface) 技术详解】 JNI(Java Native Interface)是Java平台标准的一部分,它允许Java代码和其他语言写的代码进行交互。JNI在Java应用程序中调用本地(非Java)代码,如C++,提供了强大的...

    Android深入研究JNI详解.pdf

    Android 深入研究 JNI 详解 JNI(Java Native Interface)是 Java 平台的一部分,允许 Java 代码和其他语言编写的代码进行交互。JNI 是本地编程接口,使得在 Java 虚拟机(VM)内部运行的 Java 代码能够与用其他...

    dll.rar_c++快捷屏蔽_c++快捷屏蔽键_dll怎样屏蔽

    《C++实现DLL快速屏蔽Ctrl+Alt+Del组合键详解》 在计算机编程领域,有时我们需要对特定的系统功能进行控制,例如屏蔽某些快捷键,以达到特定的安全或管理目的。本篇将深入探讨如何使用C++编程语言,创建一个动态...

    JNI详解及实例程序(英文)

    ### JNI详解及实例程序 #### 一、JNI简介 JNI(Java Native Interface)是一种机制,它允许Java程序调用C或C++程序中的函数,同时也可以让C或C++程序调用Java程序中的方法。使用JNI的主要原因包括但不限于: 1. *...

    Android下JNI入门详解

    ### Android下JNI入门详解 #### 一、JNI与VM简介 JNI(Java Native Interface)作为Android平台上连接Java层与C/C++层的关键桥梁,在开发过程中起着至关重要的作用。通过JNI,开发人员能够实现Java与C/C++代码之间...

    JNI详解中文版本

    ### JNI详解中文版知识点概述 #### 一、JNI简介与重要性 JNI(Java Native Interface)是一种标准接口,由Sun Microsystems定义,旨在提供Java代码与本地代码(通常是C或C++编写的应用程序)之间的交互能力。JNI...

    android jni详解

    ### Android JNI详解 #### 一、概述 Java Native Interface (JNI) 是一种强大的技术,它允许Java代码调用本地代码(如C/C++),从而在Android应用开发中发挥重要作用。JNI不仅增强了应用性能,还提供了丰富的功能...

    jni详解清晰详细pdf

    这本书《JNI详解》是一部关于JNI的详细教程,内容可能包括以下几个主要部分: 1. **JNI基础**:介绍JNI的概念、历史背景和设计目标。这部分可能会讲解JNI如何作为一个桥梁,连接Java虚拟机(JVM)和本地代码,以及...

Global site tag (gtag.js) - Google Analytics