Commit fd894879 authored by captainwong's avatar captainwong

update java doc

parent e01e4536
现在已经支持 `Java` 通过 `JNI` 调用 `C++` 的动态链接库。
## 总体流程
1. 根据 `javademo/jni/AdemcoHbLibrary.java` 生成 `C++` 头文件 `javademo/cpp/javademo_jni_AdemcoHbLibrary.h`, `javademo/cpp/javademo_jni_AdemcoHbLibrary_ParseResult.h`
2. 编译 `javademo/cpp` 项目生成动态库供 `Java` 项目调用
3. `Java` 项目引入 `javademo/jni/AdemcoHbLibrary.java`
可以参考 `SimpleServer` 引入 `AdmeocHbLibrary` 进行解包、打包。
注意若使用预编译动态库,引入 `AdmeocHbLibrary` 时需整包引入,动态链接库会以包名查找 `AdmeocHbLibrary` 类,详情见 [dllmain.cpp](javademo/cpp/dllmain.cpp)`Java_javademo_jni_AdemcoHbLibrary_nativeParse` 函数,包名不同则查找失败,用户自行编译动态库时需同时修改此函数内容。
## Unix-based
已经在以下环境测试成功:
......@@ -21,11 +31,6 @@
3. `java javademo.jni.SimpleServer 12345` 进行测试
## 二次开发
可以参考 `SimpleServer` 引入 `AdmeocHbLibrary` 进行解包、打包。
注意若使用预编译动态库,引入 `AdmeocHbLibrary` 时需整包引入,动态链接库会以包名查找 `AdmeocHbLibrary` 类,详情见 [dllmain.cpp](javademo/cpp/dllmain.cpp)`Java_javademo_jni_AdemcoHbLibrary_nativeParse` 函数,包名不同则查找失败,用户自行编译动态库时需同时修改此函数内容。
## 作者对 `Java` 开发不熟悉,有任何意见、建议欢迎提 `issue` 及 `pr`
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment