海康SDKDemo使用解析
本篇主要介绍运行海康SDK java实例的配置。
下载SDK
我网址:https://www.hikvision.com/cn/download_61.html 根据自己需求下载对应版本
解压如图所示:
项目导入
1.将CH-HCNetSDKV6.0.2.10_build20190117_Win64\Demo示例\4- Java 开发示例\1-ClientDemo目录下的ClientDemo-NetBeansPro项目复制到自己的workspace中。
2.设备网络SDK开发包【库文件】里的HCNetSDK.dll、HCCore.dll、PlayCtrl.dll、SuperRender.dll、AudioRender.dll、HCNetSDKCom文件夹等文件均要加载到程序里面。
HCNetSDKCom文件夹(包含里面的功能组件dll库文件)需要和HCNetSDK.dll、HCCore.dll一起加载,放在同一个目录下,且HCNetSDKCom文件夹名不能修改。(在项目的根目录下创建一个lib文件夹 去存放这些库文件)
3.官方推荐的是NetBeans IDE 8.0。本人使用STS和myeclipse测试均没问题 所以IDE选用无所谓。正常项目导入工作台中。
注:编译环境必须匹配,X86的编译环境(JRE、JDK等都是32位的,测试过的jdk有1.8.0版本和1.6.0)需要加载32位的SDK库,X64的编译环境(JRE、JDK等都是64位的,测试的jdk是1.8.0版本)需要加载64位的SDK库。我自己想选用的是X64和JDK1.8.
代码修改
找到项目中HCNetSDK.java文件。更改库文件中两个loadLibrary的位置,不修改可能会出现如下错误:
java.lang.UnsatisfiedLinkError: Unable to load library ÕҲ»µ½ָ¶¨
我是将地址改为绝对路径
//SDK接口说明,HCNetSDK.dll
public interface HCNetSDK extends StdCallLibrary {
HCNetSDK INSTANCE = (HCNetSDK) Native.loadLibrary(
"D:\\workspaces\\ClientDemo-NetBeansPro\\lib\\HCNetSDK.dll",
HCNetSDK.class);
// 播放库函数声明,PlayCtrl.dll
interface PlayCtrl extends StdCallLibrary {
PlayCtrl INSTANCE = (PlayCtrl) Native.loadLibrary(
"D:\\workspaces\\ClientDemo-NetBeansPro\\lib\\PlayCtrl.dll",
PlayCtrl.class);
项目启动
找到ClientDemo.java直接运行main方法即可。效果如图: