java調(diào)jni調(diào)用第三方so庫 如何成功調(diào)用JNI的實例?
如何成功調(diào)用JNI的實例?靜態(tài)模式:1。首先在Android根目錄下設(shè)置測試目錄,然后在測試目錄下設(shè)置測試目錄,輸入2,輸入測試目錄,然后是維姆HelloWorld.java文件單擊此處折疊或打開He
如何成功調(diào)用JNI的實例?
靜態(tài)模式:1。首先在Android根目錄下設(shè)置測試目錄,然后在測試目錄下設(shè)置測試目錄,輸入2,輸入測試目錄,然后是維姆HelloWorld.java文件單擊此處折疊或打開HelloWorld.java文件:package testpublic class HelloWorld{public static void main(String[]args){System.loadLibrary文件(“HelloWorld”)printHello()}public static native Finally void printHello()}3,退出測試目錄,鍵入命令://jdk1.5.0_22/bin/javac test/HelloWorld.java文件,測試目錄HelloWorld.class4類,類型。。/jdk1.5.0_22/bin/javah-o測試/Hello.h測試.HelloWorld,測試目錄將生成hello。H5,并在測試目錄中創(chuàng)建它HelloWorld.cpp文件單擊此處折疊或打開文件HelloWorld.cpp文件:#包括“你好。H“#include
區(qū)別如下:
JNI是Java調(diào)用本機機制,這是Java語言本身的特點。它也可以被稱為微軟的基本.Net調(diào)用C/capi,因此JNI與Android無關(guān)。在PC上開發(fā)Java應(yīng)用程序,如果運行在Windows平臺上,經(jīng)常使用JNI,比如讀寫Windows注冊表。
NDK是Google推出的一個開發(fā)包,幫助Android開發(fā)者用C/C本地語言編寫應(yīng)用程序。它包含C/C頭文件、庫文件、文檔和示例代碼。
我們可以理解,它是用純C/C編寫的,就像Windows平臺SDK一樣,但是Android不支持用純C/C編寫的應(yīng)用程序,同時NDK提供的庫和函數(shù)非常有限,只處理一些算法效率敏感的問題。因此,android123建議初學(xué)者在學(xué)習(xí)JNI之前先學(xué)習(xí)java。