功能:
这里仅用到了视频监控;
官网上的功能:
1. 快速搭建云监控系统
扫码快速添加设备,提供海量设备管理与流媒体并发能力,随时随地查看云端视频,无需任何运营及运维管理成本投入
2. 让门店标准化管理更简单
远程巡查考评、员工考勤签到、异常POS单回溯,提供高效标准化管理工具,让门店现场变的触手可及
3. 掌握数据,指导运营优化
提供门店客流量统计、区域滞留分析、到店顾客群体分析、会员/回头客分析、车牌识别推送等功能,帮助企业掌握营销场景情况及顾客画像 ,丰富线下数据
SDK集成步骤:
1. 将从官网https://www.hik-cloud.com/poseidon/index.html#/download 上下载的HikCloudOpenSDK-1.0.3.aar放到libs目录下,并在build.gradle中添加:
android{
defaultConfig {
...
ndk {
abiFilters "armeabi-v7a", "arm64-v8a"
}
}
sourceSets {
main {
jniLibs.srcDirs = ['libs']
}
}
...
repositories {
flatDir {
dirs 'libs'
}
}
}
并添加依赖:
dependencies {
implementation(name: 'CloudOpenSDK-x.x.x',ext:'aar') //x.x.x对应的是SDK的版本号
implementation 'com.google.code.gson:gson:2.8.5'
implementation 'com.squareup.okhttp3:okhttp:3.8.1' //3.8.1或以上
implementation 'javax.jmdns:jmdns:3.4.1'
}
2. 配置权限
//网络状态权限
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
//网络权限
<uses-permission android:name="android.permission.INTERNET"/>
//录音权限
<uses-permission android:name="android.permission.RECORD_AUDIO" />
//存储权限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
3. SDK初始化:
3.1 先通过接口:https://api2.hik-cloud.com/oauth/token 获取accessToken,返回的数据中除了accessToken外,还有一个accessToken的剩余过期时间expires_in
private void getAuthToken() {
OkHttpUtils.post().url("https://api2.hik-cloud.com/oauth/token")
.addParams("client_id",Const.CLIENT_ID)
.addParams("client_secret",Const.CLIENT_SECRET)
.addParams("grant_type","client_credentials")
.addParams("scope","app").build()
.execute(new StringCallback() {
@Override
public void onError(Call call, Exception e, int id) {
Log.e(TAG,"initIot e="+e.toString());
}
@Override
public void onResponse(String response, int id) {
Log.e(TAG,"initIot response="+response.toString());
//{"access_token":"136f9a7c-89b2-430c-9f22-eca69d90e4e4","token_type":"bearer","refresh_token":null,"scope":"app","expires_in":258213}
try {
JSONObject object = new JSONObject(response);
SPUtils.setData("access_token",object.getString("access_token"));
long expiresTime = object.getLong("expires_in");
// DateUtils.periodToString(Const.expiresTime*1000);
Date date = DateUtils.getDateAfterSeconds(new Date(),expiresTime);
initIot();
} catch (JSONException e) {
e.printStackTrace();
}
}
});
}
默认情况下,Access Token 有效期为7天,开发者需要对 Access Token的有效性进行判断,若调用API时返回Http状态码为401,则说明Access Token已失效,重新获取即可。
3.2 用获取到的accessToken,对SDK进行初始化;
private void initIot() {
CloudOpenSDK.getInstance().setLogDebugMode(true) 默认日志开关状态:打开,正式发布需要关掉
//sdk数据缓存加密开关(例如SP存储),放在init()方法前设置
.setDataCacheEncrypt(true,"123456")
.init(this, SPUtils.getString("access_token"), new OnCommonCallBack() {
@Override
public void onSuccess() {
Log.d(TAG, "初始化成功");
}
@Override
public void onFailed(Exception e) {
Log.d(TAG, "初始化失败"+e.toString()+","+e.getMessage()+",");
if (e.getMessage().equals("认证失败")) {
getAuthToken();
}
}
});
}
4. 代码混淆:
-dontwarn com.ezviz.**
-keep class com.ezviz.** { *;}
-dontwarn com.ez.**
-keep class com.ez.** { *;}
-dontwarn com.hc.**
-keep class com.hc.** { *;}
-dontwarn com.neutral.netsdk.**
-keep class com.neutral.netsdk.** { *;}
-dontwarn com.hik.**
-keep class com.hik.** { *;}
-dontwarn com.hikvision.audio.**
-keep class com.hikvision.audio.** { *;}
-dontwarn com.hikvision.keyprotect.**
-keep class com.hikvision.keyprotect.** { *;}
-dontwarn com.hikvision.sadp.**
-keep class com.hikvision.sadp.** { *;}
-dontwarn com.hikvision.netsdk.**
-keep class com.hikvision.netsdk.** { *;}
-dontwarn com.hikvision.wifi.**
-keep class com.hikvision.wifi.** { *;}
-dontwarn com.hikvision.cloud.sdk.**
-keep class com.hikvision.cloud.sdk.** { *;}
-dontwarn com.videogo.**
-keep class com.videogo.** { *;}
-dontwarn okhttp3.**
-keep class okhttp3.** { *;}
-dontwarn com.mediaplayer.audio.**
-keep class com.mediaplayer.audio.** { *;}
-dontwarn org.MediaPlayer.PlayM4.**
-keep class org.MediaPlayer.PlayM4.** { *;}
-dontwarn com.sun.jna.**
-keep class com.sun.jna.**{*;}
#Gson混淆配置
-keepattributes Annotation
-keep class sun.misc.Unsafe { *; }
-keep class com.idea.fifaalarmclock.entity.*
-keep class com.google.gson.stream.* { *; }
#引用mars的xlog,混淆配置
-keep class com.tencent.mars.** {
public protected private *;
}
今天的文章海康威视云眸_海康云眸使用说明分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/67111.html