99久久全国免费观看_国产一区二区三区四区五区VM_久久www人成免费看片中文_国产高清在线a视频大全_深夜福利www_日韩一级成人av

  • 回復
  • 收藏
  • 點贊
  • 分享
  • 發新帖

LKT5103A Hid接口LINUX系統下JNI開發流程

一、什么是JNI

Java以其跨平臺的特性深受人們喜愛,而又正由于它的跨平臺的目的,使得它和本地機器的各種內部聯系變得很少,約束了它的功能。解決Java對本地操作的一種方法就是JNI。JNI是Java native interface的簡寫,意為Java本地調用,它允許Java代碼和其他語言寫的代碼進行交互,從Java1.1開始,JNI標準成為Java平臺的一部分。

     使用Java與本地已編譯的代碼交互,通常會喪失平臺可移植性。但是,有些情況下這樣做是可以接受的,甚至是必須的。例如,與硬件、操作系統進行交互,或者為了提高程序的性能。

二、平臺以及環境

(1)開發平臺

Linux系統或者虛擬機。

注意:因為涉及到LINUX下的HID接口,所以保證開發的系統內核在2.6版本以上。

(2)開發包

1):安裝gcc和g++,保證兩個版本一致。

安裝zhiling:

yum install gcc

yum install gcc-c++

查版本zhiling:

g++ --version

gcc --version

2):安裝jdk環境。具體可以上網上找資料。

以debian系統為例,在終端運行的安裝zhiling如下:

sudo apt-get update

sudo apt-get install default-jre

sudo apt-get install default-jdk

三、開發步驟

1)創建一個Java程序(如LKT5103AJni.java)定義原生的c/c++函數。

2)用javac編譯(zhiling:javac LKT5103AJni.java) LKT5103AJni.java生成 LKT5103AJni.class。

3)用javah帶-jni參數編譯zhiling:javah -jni LKT5103AJni) LKT5103AJni.class生成 LKT5103AJni.h文件,該文件中 定義了c的函數原型。在實現c函數的時候需要。

4)創建LKT5103AJni.c,實現LKT5103AJni.h定義的函數。

5)編譯LKT5103AJni.c生成libLKT5103AJni.so。

zhiling:gcc -I/usr/lib/jvm/java-8-openjdk-amd64/include/ -I/usr/lib/jvm/java-8-openjdk-amd64/include/linux -fPIC -shared -o libLKT5103AJni.so LKT5103AJni.c

6)創建testJni.Java,實現測試jni接口。

7)編譯testJni.java(zhiling:javac testJni.java)。

8)運行測試代碼。

(zhiling:export LD_LIBRARY_PATH=./   

java testJni   

或者:

java -Djava.library.path=. testJni)

全部回復(19)
正序查看
倒序查看
2019-10-17 13:41

JNI主要還是舉例子,舉例子直觀,

0
回復
zntsbkhhh
LV.2
3
2019-10-17 14:21
@miniminimini
JNI主要還是舉例子,舉例子直觀,
LKT5103A,好像在網上看見過,具體誰家的產品記不太清了.....
0
回復
小帆兒
LV.5
4
2019-10-17 15:00
@zntsbkhhh
LKT5103A,好像在網上看見過,具體誰家的產品記不太清了.....
凌科芯安的,我們公司就在用呢,技術服務很到位
0
回復
2019-10-17 17:01
@小帆兒
凌科芯安的,我們公司就在用呢,技術服務很到位
這套開發流程挺好的 ,說的很詳細,已經推薦給我們技術部門了
0
回復
hiuu
LV.1
6
2019-10-18 16:04
@人稱福爺
這套開發流程挺好的,說的很詳細,已經推薦給我們技術部門了
插入圖片更形象生動,每一步都配上初始圖片和結果圖,顯得更好。
0
回復
鄧女士
LV.5
7
2019-10-18 16:12
@hiuu
插入圖片更形象生動,每一步都配上初始圖片和結果圖,顯得更好。
有了JNI,Java的運用更廣了 
0
回復
BLoun
LV.5
8
2019-10-18 23:00
@鄧女士
有了JNI,Java的運用更廣了 
很不錯學習了,但是為什么要求內核是2.6版本以上。低版本也支持HID協議啊?
0
回復
Hex315
LV.5
9
2019-10-19 10:49
@BLoun
很不錯學習了,但是為什么要求內核是2.6版本以上。低版本也支持HID協議啊?
文中的LKT5103A 是樓主新推出的一款產品吧,能簡單介紹一下功能嗎? 
0
回復
114W1
LV.5
10
2019-10-19 18:33
@Hex315
文中的LKT5103A是樓主新推出的一款產品吧,能簡單介紹一下功能嗎? 
LKT5103A是以32位安全芯片平臺為基礎的具有目前行業內最高性能最高安全性的軟件加密產品。
0
回復
2019-10-19 23:24
5103除了HID接口還有別的接口嗎
0
回復
zntsbkhhh
LV.2
12
2019-10-19 23:41
應該還支持其他的USB接口吧 
0
回復
2019-10-20 03:17
@zntsbkhhh
應該還支持其他的USB接口吧 
LKT5103A是什么產品,有什么功能?是不是我自己的庫也可以這樣調用呢?如果可以那就非常有用了
0
回復
hiuu
LV.1
14
2019-10-20 11:57
為什么要用JNI呢

0
回復
小帆兒
LV.5
15
2019-10-20 22:46
@hiuu
為什么要用JNI呢
因為有些功能JAVA無法提供,比如對掃描儀驅動,只能想辦法通過C/C++來操作,然后用JAVA去調用C.這就需要JNI了.
0
回復
BLoun
LV.5
16
2019-10-21 21:27
@小帆兒
因為有些功能JAVA無法提供,比如對掃描儀驅動,只能想辦法通過C/C++來操作,然后用JAVA去調用C.這就需要JNI了.
這個是外接到USB接口的設備嗎?有沒有芯片貼片形式?可以集成到主板上的那種
0
回復
宇宙王
LV.3
17
2019-10-22 09:12
@BLoun
這個是外接到USB接口的設備嗎?有沒有芯片貼片形式?可以集成到主板上的那種
加密狗里面也都是芯片,只不過加了個外殼而已
0
回復
Hex315
LV.5
18
2019-10-22 11:51
@宇宙王
加密狗里面也都是芯片,只不過加了個外殼而已
使用JNI是因為LKT5103A是其他語言的嗎,那它支持什么語言?
0
回復
鄧女士
LV.5
19
2019-10-22 13:41
@Hex315
使用JNI是因為LKT5103A是其他語言的嗎,那它支持什么語言?
文章很實用,有沒有詳細的JNI接口說明呀?這些編譯zhiling都是一樣的嗎? 
0
回復
114W1
LV.5
20
2019-10-22 18:00
@鄧女士
文章很實用,有沒有詳細的JNI接口說明呀?這些編譯zhiling都是一樣的嗎? 
文章很不錯,學習了,謝謝樓主的分享!
0
回復
主站蜘蛛池模板: 高清日本视频 | 宗合久久 | 亚洲二区三区在线 | 性色AV一区二区三区无码 | 高清性色生活片免费播放网 | 久久亚洲国产视频 | 精品国产欧美日韩不卡在线观看 | 台湾毛片| 精品少妇的一区二区三区四区 | 永久黄网站色视频免费 | 亚洲色大网站WWW永久网站 | 国产性网| 精品人伦一区二区三区蜜桃视频 | 国产精品啊啊啊 | 国产欧美日韩精品一区二区三区 | 曰韩毛片 | 天天澡日日澡狠狠欧美老妇 | 日本孕妇潮喷高潮视频 | 中文字幕乱码中文乱码51精品 | 久久亚洲AⅤ精品网站 | 成人免费视频在线观看 | 桃子视频在线观看高清免费视频 | 真人二十三式性视频(动) | www.夜夜夜 | 精品熟女碰碰人人A久久 | 国内精品免费久久久久软件 | 中文字幕123伦 | 性欧美另类黑人巨大HD | 黄色日本大片 | 久久亚洲美女精品国产精品 | 欧美亚洲日本 | 秋霞影视一区二区三区 | 国产在线a视频 | 91精品国产综合久久男男 | 99国精产品影视 | 久久精品国产一区二区三区四区 | 永久亚洲成a人片777777 | 伊人久久大香线蕉AV五月天宝贝 | 午夜羞羞影院免费播放在线观看 | 亚洲欧洲一区二区三区在线 | 精品国产一区二区三区久久狼5月 |