From 3698c13aba988cd3e41b91b255e1c682c057e565 Mon Sep 17 00:00:00 2001 From: chenqiyang <1406175257@qq.com> Date: 星期四, 23 三月 2023 11:49:58 +0800 Subject: [PATCH] 1.新增历史记录相关页面及功能 2.修改配网为热点配网 3.设备列表增加过滤门锁功能 4.增加添加设备通知功能 --- EZSDK/EZSDK/EZSDK.m | 418 +++++++++++++++++++++++++++++++++++++--------------------- 1 files changed, 265 insertions(+), 153 deletions(-) diff --git a/EZSDK/EZSDK/EZSDK.m b/EZSDK/EZSDK/EZSDK.m index 02954b8..d7c2c54 100644 --- a/EZSDK/EZSDK/EZSDK.m +++ b/EZSDK/EZSDK/EZSDK.m @@ -6,8 +6,7 @@ // #import "EZSDK.h" -#import "DeviceInfo.h" -#import "EZDeviceInfo.h" +//#import "DeviceInfo.h" #import "EZDeviceInfo.h" #import "EZOpenSDK.h" #import "GlobalKit.h" @@ -19,41 +18,280 @@ #import "EZPlaybackViewController.h" #import "EZDeviceTableViewController.h" #import "EZHCNetDeviceSDK.h" - - -#define CURR_LANG ([[NSLocale preferredLanguages] objectAtIndex:0]) -#define LanguageIsChinese ([CURR_LANG rangeOfString:@"zh-Hans"].location != NSNotFound) - +#import "EZMessagePhotoViewController.h" +#import "HDLEZVisitorRecordViewController.h" +#import "HDLEZDeviceMsgListViewController.h" @implementation EZSDK + +/// ++ (instancetype)sharedInstance{ + static EZSDK *instance = nil; + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + if (!instance) { + instance = [[EZSDK alloc] init]; + } + }); + return instance; +} + +static BOOL isHavelibInit=NO; /** 鍒濆鍖朣DK 浼犲叆鍥藉唴鐗坘ey 鍜屾捣澶栫増globalAppKey */ -+ (BOOL)initLibWithAppKey:(NSString *)appKey globalAppKey:(NSString *)globalAppKey +- (BOOL)initLibWithAppKey:(NSString *)appKey globalAppKey:(NSString *)globalAppKey { - static BOOL isHavelibInit=NO; if (!isHavelibInit) { -// isHavelibInit=YES; - NSLog(@"绗竴娆″垵濮嬪寲钀ょ煶搴�"); + [EZOPENSDK setDebugLogEnable:YES]; + // isHavelibInit=YES; + // NSLog(@"绗竴娆″垵濮嬪寲钀ょ煶搴�"); if (!LanguageIsChinese) { //娴峰鐗� isHavelibInit = [EZGlobalSDK initLibWithAppKey:globalAppKey]; NSLog(@"娴峰鐗坘ey--%@",globalAppKey); }else{ isHavelibInit = [EZOpenSDK initLibWithAppKey:appKey]; + [[GlobalKit shareKit] setHdlAppKey:appKey]; NSLog(@"鍥藉唴鐗坘ey--%@", appKey); } - [EZHCNetDeviceSDK initSDK]; [EZOPENSDK enableP2P:YES]; - [EZOPENSDK setDebugLogEnable:YES]; +// [EZOPENSDK setDebugLogEnable:YES]; NSLog(@"EZOpenSDK Version = %@", [EZOPENSDK getVersion]); +// NSLog(@"EZOpenSDK treamToken= %@", ); + } return isHavelibInit; } +/** + 璁剧疆SDK鐨刟ccessToken + */ +-(void)setEZAccessToken:(NSString *) accessToken +{ + [[GlobalKit shareKit] setAccessToken:accessToken]; + [EZOPENSDK setAccessToken:accessToken]; +} + +/** + 璁剧疆HDLSDK鐨刟ccessToken + */ +-(void)setHDlAccessToken:(NSString *) accessToken refreshToken:(NSString *) refreshToken +{ + [[GlobalKit shareKit] setHdlAccessToken:accessToken]; + [[GlobalKit shareKit] setHdlRefreshToken:refreshToken]; +} +/** + 璁剧疆SDK鐨勬渤涓滄帴鍙g殑requestHttpsHost鍜屽钩鍙� 鏍囪瘑锛�1.on+(榛樿) 2.evoyo + */ +-(void)setRequestHttpsHostAndPlatform:(NSString *) requestHttpsHost platform:(int)platform homeId:(NSString *)homeId{ + [[GlobalKit shareKit] setGlobalRequestHttpsHost:requestHttpsHost]; + [[GlobalKit shareKit] setHdlPlatform:platform]; + [[GlobalKit shareKit] setHdlHomeId:homeId]; +} + +//鑾峰彇褰撳墠灞忓箷鏄剧ず鐨剉iewcontroller (杩欓噷闈㈣幏鍙栫殑鐩稿綋浜巖ootViewController) +-(UINavigationController *)getCurrentVC +{ + UIWindow * window = [[UIApplication sharedApplication] keyWindow]; + if (window.windowLevel != UIWindowLevelNormal) + { + NSArray *windows = [[UIApplication sharedApplication] windows]; + for(UIWindow * tmpWin in windows) + { + if (tmpWin.windowLevel == UIWindowLevelNormal) + { + window = tmpWin; + break; + } + } + } + + return (UINavigationController *)window.rootViewController; +} + + +/** + 鐩存帴璺宠浆鍒拌悿鐭虫憚鍍忓ご鍒楄〃 + */ +-(void)go2EZvizMonitor +{ +// [GlobalKit shareKit].deviceType=HDLEZDeviceType_Default; +// // NSLog(@"go2EZvizMonitor"); +// //鑾峰彇EZMain鐨剆troyboard鏂囦欢 +// UIStoryboard *ezMainStoryboard = [UIStoryboard storyboardWithName:@"EZMain" bundle:nil]; +// //鑾峰彇EZMain.storyboard鐨勫疄渚媀iewController--鑾峰彇鎽勫儚澶村垪琛� +// EZDeviceTableViewController *instanceVC = [ezMainStoryboard instantiateViewControllerWithIdentifier:@"EZCameraList"]; +// //push鎽勫儚澶村垪琛ㄧ殑viewController +// [[self getCurrentVC] setNavigationBarHidden:NO]; +// // NSLog(@"willpush********"); +// [[self getCurrentVC] pushViewController:instanceVC animated:YES]; +// // NSLog(@"had pushed********"); + [self toEZDeviceListViewWithFilterTypes:@[@""]]; +} + +/** + 鐩存帴璺宠浆鍒拌悿鐭虫憚鍍忓ご鍒楄〃(绛涙帀闂ㄩ攣璁惧) + @param filterTepes 杩囨护鍨嬪彿鏁扮粍 + */ +- (void)toEZDeviceListViewWithFilterTypes:(NSArray*)filterTepes{ + [GlobalKit shareKit].deviceType=HDLEZDeviceType_Default; + //鑾峰彇EZMain鐨剆troyboard鏂囦欢 + UIStoryboard *ezMainStoryboard = [UIStoryboard storyboardWithName:@"EZMain" bundle:nil]; + //鑾峰彇EZMain.storyboard鐨勫疄渚媀iewController--鑾峰彇鎽勫儚澶村垪琛� + EZDeviceTableViewController *instanceVC = [ezMainStoryboard instantiateViewControllerWithIdentifier:@"EZCameraList"]; + instanceVC.filterTypes=filterTepes; + //push鎽勫儚澶村垪琛ㄧ殑viewController + [[self getCurrentVC] setNavigationBarHidden:NO]; + [[self getCurrentVC] pushViewController:instanceVC animated:YES]; +} + +/** + 璺宠浆娣诲姞娣诲姞璁惧 + */ +-(void)addEzvizMonitor +{ +// // NSLog(@"娣诲姞鎽勫儚澶�"); +// if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0) { +// UIStoryboard *addDeviceStoryBoard = [UIStoryboard storyboardWithName:@"AddDevice" bundle:nil]; +// EZAddByQRCodeViewController *rootViewController = [addDeviceStoryBoard instantiateViewControllerWithIdentifier:@"AddByQRCode"]; +// [[self getCurrentVC] setNavigationBarHidden:NO]; +// [[self getCurrentVC] pushViewController:rootViewController animated:YES]; +// } else { +// // [UIView dd_showMessage:@"iOS 7.0浠ヤ笅鎵爜鍔熻兘璇疯嚜琛屽疄鐜�"]; +// NSLog(@"iOS 7.0浠ヤ笅鎵爜鍔熻兘璇疯嚜琛屽疄鐜�"); +// } + [self addEzvizMonitorWithDeviceType:@""]; +} + +/** + 璺宠浆娣诲姞娣诲姞璁惧 + @param deviceType 璁惧绫诲瀷 + */ +- (void)addEzvizMonitorWithDeviceType:(NSString *)deviceType{ + HDLEZDeviceType type=[deviceType isEqualToString:HDLEZ_DOOR_SPK] ? HDLEZDeviceType_Door : HDLEZDeviceType_Default; + // NSLog(@"娣诲姞鎽勫儚澶�"); + if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0) { + UIStoryboard *addDeviceStoryBoard = [UIStoryboard storyboardWithName:@"AddDevice" bundle:nil]; + EZAddByQRCodeViewController *rootViewController = [addDeviceStoryBoard instantiateViewControllerWithIdentifier:@"AddByQRCode"]; + rootViewController.deviceType=type; + [[self getCurrentVC] setNavigationBarHidden:NO]; + [[self getCurrentVC] pushViewController:rootViewController animated:YES]; + } else { + // [UIView dd_showMessage:@"iOS 7.0浠ヤ笅鎵爜鍔熻兘璇疯嚜琛屽疄鐜�"]; + NSLog(@"iOS 7.0浠ヤ笅鎵爜鍔熻兘璇疯嚜琛屽疄鐜�"); + } +} + +/** + 鏌ョ湅瑙嗛鐩戞帶鐩存挱 + */ +-(void)Play:(EZDeviceInfo*)deviceInfo +{ + [GlobalKit shareKit].deviceType=HDLEZDeviceType_Default; + UIStoryboard *addDeviceStoryBoard = [UIStoryboard storyboardWithName:@"EZMain" bundle:nil]; + EZLivePlayViewController *rootViewController = [addDeviceStoryBoard instantiateViewControllerWithIdentifier:@"EZLivePlayViewController"]; + // NSLog(@"play--iphone--rootViewController"); + rootViewController.deviceInfo=(EZDeviceInfo *)deviceInfo; + NSLog(@"play--iphone--deviceName -%@",rootViewController.deviceInfo.deviceName); +// rootViewController.cameraIndex=0; + [[self getCurrentVC] setNavigationBarHidden:NO]; + [[self getCurrentVC] pushViewController:rootViewController animated:YES]; + + +} + +/// 鎸囧畾搴忓垪鍙锋挱鏀� +/// @param deviceSerial 搴忓垪鍙� +-(void)PlayWithDeviceSerial:(NSString *)deviceSerial{ + //鑾峰彇璁惧鍒楄〃鎺ュ彛 + [EZOpenSDK getDeviceInfo:deviceSerial completion:^(EZDeviceInfo *deviceInfo, NSError *error) { + if(error) + { + NSLog(@"EZ 鏌ヨ璁惧淇℃伅澶辫触"); + return; + } + if (deviceInfo) { + [self Play:deviceInfo]; + } + }]; +} + +/** + 鏍规嵁搴忓垪鍙疯繘鍏ラ棬閿佽棰� + @param deviceSerial 搴忓垪鍙� + @param deviceId 璁惧id + @param deviceType 璁惧spk(鐢ㄤ簬鍖哄垎鏄惁涓洪棬閿�) + */ +-(void)PlayWithDeviceSerial:(NSString *)deviceSerial deviceId:(NSString*)deviceId deviceType:(NSString *)deviceType{ + [GlobalKit shareKit].deviceType=[deviceType isEqualToString:HDLEZ_DOOR_SPK] ? HDLEZDeviceType_Door : HDLEZDeviceType_Default; + UIStoryboard *ezMainStoryBoard = [UIStoryboard storyboardWithName:@"EZMain" bundle:nil]; + EZLivePlayViewController *vc = [ezMainStoryBoard instantiateViewControllerWithIdentifier:@"EZLivePlayViewController"]; + vc.deviceId=deviceId; + vc.deviceSerial=deviceSerial; + [[self getCurrentVC] setNavigationBarHidden:NO]; + [[self getCurrentVC] pushViewController:vc animated:YES]; +} + +/** + 鎵撳紑鎽勫儚澶磋缃〉闈� + */ +-(void)setting:(EZDeviceInfo*)deviceInfo +{ + UIStoryboard *settingStoryBoard=[UIStoryboard storyboardWithName:@"EZMain" bundle:nil]; + EZSettingViewController *settingVC=[settingStoryBoard instantiateViewControllerWithIdentifier:@"EZSettingViewController"]; + settingVC.deviceInfo=(EZDeviceInfo *)deviceInfo; + [[self getCurrentVC] setNavigationBarHidden:NO]; + [[self getCurrentVC] pushViewController:settingVC animated:YES]; +} + +/** + 鍥炴斁鎾斁鍘嗗彶 + */ +-(void)playBackVideo:(EZDeviceInfo*)deviceInfo +{ + UIStoryboard *playBackStoryBoard=[UIStoryboard storyboardWithName:@"EZMain" bundle:nil]; + EZPlaybackViewController *playBackVC=[playBackStoryBoard instantiateViewControllerWithIdentifier:@"EZPlaybackViewController"]; + playBackVC.deviceInfo=(EZDeviceInfo *)deviceInfo; + [[self getCurrentVC] setNavigationBarHidden:NO]; + [[self getCurrentVC] pushViewController:playBackVC animated:YES]; +} + +/**涓存椂瀵嗙爜椤� + @param deviceId 璁惧id + */ +- (void)toTemPassView:(NSString*)deviceId{ + HDLEZVisitorRecordViewController *vc=[[HDLEZVisitorRecordViewController alloc] init]; + vc.deviceId=deviceId; + [[self getCurrentVC] setNavigationBarHidden:YES]; + [[self getCurrentVC] pushViewController:vc animated:YES]; +} + +/**璁惧鍘嗗彶璁板綍椤� + @param deviceId 璁惧id + */ +- (void)toDeviceMsgListView:(NSString*)deviceId{ + HDLEZDeviceMsgListViewController *vc=[[HDLEZDeviceMsgListViewController alloc] init]; + vc.deviceId=deviceId; + [[self getCurrentVC] setNavigationBarHidden:YES]; + [[self getCurrentVC] pushViewController:vc animated:YES]; + +} + +//// +//-(void)goToEZMessagePhotoVC:(EZAlarmInfo*)alarmInfo{ +// UIStoryboard *addDeviceStoryBoard = [UIStoryboard storyboardWithName:@"EZMain" bundle:nil]; +// EZMessagePhotoViewController *rootViewController = [addDeviceStoryBoard instantiateViewControllerWithIdentifier:@"EZMessagePhotoViewController"]; +// // NSLog(@"play--iphone--rootViewController"); +// rootViewController.info = alarmInfo; +//// NSLog(@"play--iphone--deviceName -%@",rootViewController.deviceInfo.deviceName); +//// rootViewController.cameraIndex=0; +// [[self getCurrentVC] setNavigationBarHidden:NO]; +// [[self getCurrentVC] pushViewController:rootViewController animated:YES]; +//} //+(void)MonitorPushMessage:(NSString *)MonitorType ID:(NSString *)ID //{ // [CommonList login]; @@ -122,68 +360,6 @@ // return ICommons; //} -//鑾峰彇褰撳墠灞忓箷鏄剧ず鐨剉iewcontroller (杩欓噷闈㈣幏鍙栫殑鐩稿綋浜巖ootViewController) -+(UINavigationController *)getCurrentVC -{ - UIWindow * window = [[UIApplication sharedApplication] keyWindow]; - if (window.windowLevel != UIWindowLevelNormal) - { - NSArray *windows = [[UIApplication sharedApplication] windows]; - for(UIWindow * tmpWin in windows) - { - if (tmpWin.windowLevel == UIWindowLevelNormal) - { - window = tmpWin; - break; - } - } - } - - return (UINavigationController *)window.rootViewController; -} - -//+(void)login -//{ -// if ([GlobalKit shareKit].accessToken) -// { -// [EZOPENSDK setAccessToken:[GlobalKit shareKit].accessToken]; -// NSLog(@"login---1"); -// } -// else -// { -// [EZOPENSDK openLoginPage:^(EZAccessToken *accessToken) { -// [[GlobalKit shareKit] setAccessToken:accessToken.accessToken]; -// [EZOPENSDK setAccessToken:accessToken.accessToken]; -// NSLog(@"login---2"); -// }]; -// } -//} - -+(void)go2EZvizMonitor -{ - NSLog(@"go2EZvizMonitor"); -// if (isPad) { -// //鑾峰彇EZMain鐨剆troyboard鏂囦欢 -// UIStoryboard *ezMainStoryboard = [UIStoryboard storyboardWithName:@"EZMainForIPad" bundle:nil]; -// //鑾峰彇EZMain.storyboard鐨勫疄渚媀iewController--鑾峰彇鎽勫儚澶村垪琛� -// EZDeviceTableViewController *instanceVC = [ezMainStoryboard instantiateViewControllerWithIdentifier:@"EZCameraList"]; -// //push鎽勫儚澶村垪琛ㄧ殑viewController -// [[self getCurrentVC] setNavigationBarHidden:NO]; -// [[self getCurrentVC] pushViewController:instanceVC animated:YES]; -// }else{ - - //鑾峰彇EZMain鐨剆troyboard鏂囦欢 - UIStoryboard *ezMainStoryboard = [UIStoryboard storyboardWithName:@"EZMain" bundle:nil]; - //鑾峰彇EZMain.storyboard鐨勫疄渚媀iewController--鑾峰彇鎽勫儚澶村垪琛� - EZDeviceTableViewController *instanceVC = [ezMainStoryboard instantiateViewControllerWithIdentifier:@"EZCameraList"]; - //push鎽勫儚澶村垪琛ㄧ殑viewController - [[self getCurrentVC] setNavigationBarHidden:NO]; - NSLog(@"willpush********"); - [[self getCurrentVC] pushViewController:instanceVC animated:YES]; - NSLog(@"had pushed********"); -// } - -} //+(NSArray *)getDeviceList:(int)pageIndex :(int)pageSize //{ @@ -221,87 +397,23 @@ // return deviceListaArray ; //} -+(void)addEzvizMonitor -{ - NSLog(@"娣诲姞鎽勫儚澶�"); - if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0) { - UIStoryboard *addDeviceStoryBoard = [UIStoryboard storyboardWithName:@"AddDevice" bundle:nil]; - EZAddByQRCodeViewController *rootViewController = [addDeviceStoryBoard instantiateViewControllerWithIdentifier:@"AddByQRCode"]; - [[self getCurrentVC] setNavigationBarHidden:NO]; - [[self getCurrentVC] pushViewController:rootViewController animated:YES]; - } else { -// [UIView dd_showMessage:@"iOS 7.0浠ヤ笅鎵爜鍔熻兘璇疯嚜琛屽疄鐜�"]; - NSLog(@"iOS 7.0浠ヤ笅鎵爜鍔熻兘璇疯嚜琛屽疄鐜�"); - } - -} - -+(void)Play:(NSObject*)deviceInfo -{ -// if (isPad) { -// NSLog(@"play--ipad--"); -// UIStoryboard *addDeviceStoryBoard = [UIStoryboard storyboardWithName:@"EZMainForIPad" bundle:nil]; -// EZLivePlayViewController *rootViewController = [addDeviceStoryBoard instantiateViewControllerWithIdentifier:@"EZLivePlayViewController"]; -// rootViewController.deviceInfo=(EZDeviceInfo *)deviceInfo; -// rootViewController.cameraIndex=0; -// [[self getCurrentVC] setNavigationBarHidden:NO]; -// [[self getCurrentVC] pushViewController:rootViewController animated:YES]; -// }else{ - NSLog(@"play--iphone--1225"); - UIStoryboard *addDeviceStoryBoard = [UIStoryboard storyboardWithName:@"EZMain" bundle:nil]; - EZLivePlayViewController *rootViewController = [addDeviceStoryBoard instantiateViewControllerWithIdentifier:@"EZLivePlayViewController"]; - NSLog(@"play--iphone--rootViewController"); - rootViewController.deviceInfo=(EZDeviceInfo *)deviceInfo; - NSLog(@"play--iphone--deviceName -%@",rootViewController.deviceInfo.deviceName); -// rootViewController.cameraIndex=0; - [[self getCurrentVC] setNavigationBarHidden:NO]; - [[self getCurrentVC] pushViewController:rootViewController animated:YES]; +//+(void)login +//{ +// if ([GlobalKit shareKit].accessToken) +// { +// [EZOPENSDK setAccessToken:[GlobalKit shareKit].accessToken]; +// NSLog(@"login---1"); // } - - -} - - -+(void)setting:(NSObject*)deviceInfo -{ -// if (isPad) { -// UIStoryboard *settingStoryBoard=[UIStoryboard storyboardWithName:@"EZMainForIPad" bundle:nil]; -// EZSettingViewController *settingVC=[settingStoryBoard instantiateViewControllerWithIdentifier:@"EZSettingViewController"]; -// settingVC.deviceInfo=(EZDeviceInfo *)deviceInfo; -// [[self getCurrentVC] setNavigationBarHidden:NO]; -// [[self getCurrentVC] pushViewController:settingVC animated:YES]; -// }else{ - - UIStoryboard *settingStoryBoard=[UIStoryboard storyboardWithName:@"EZMain" bundle:nil]; - EZSettingViewController *settingVC=[settingStoryBoard instantiateViewControllerWithIdentifier:@"EZSettingViewController"]; - settingVC.deviceInfo=(EZDeviceInfo *)deviceInfo; - [[self getCurrentVC] setNavigationBarHidden:NO]; - [[self getCurrentVC] pushViewController:settingVC animated:YES]; +// else +// { +// [EZOPENSDK openLoginPage:^(EZAccessToken *accessToken) { +// [[GlobalKit shareKit] setAccessToken:accessToken.accessToken]; +// [EZOPENSDK setAccessToken:accessToken.accessToken]; +// NSLog(@"login---2"); +// }]; // } +//} - -} - -+(void)playBackVideo:(NSObject*)deviceInfo -{ - -// if (isPad) { -// UIStoryboard *playBackStoryBoard=[UIStoryboard storyboardWithName:@"EZMainForIPad" bundle:nil]; -// EZPlaybackViewController *playBackVC=[playBackStoryBoard instantiateViewControllerWithIdentifier:@"EZPlaybackViewController"]; -// playBackVC.deviceInfo=(EZDeviceInfo *)deviceInfo; -// playBackVC.cameraIndex=0; -// [[self getCurrentVC] setNavigationBarHidden:NO]; -// [[self getCurrentVC] pushViewController:playBackVC animated:YES]; -// }else{ - UIStoryboard *playBackStoryBoard=[UIStoryboard storyboardWithName:@"EZMain" bundle:nil]; - EZPlaybackViewController *playBackVC=[playBackStoryBoard instantiateViewControllerWithIdentifier:@"EZPlaybackViewController"]; - playBackVC.deviceInfo=(EZDeviceInfo *)deviceInfo; -// playBackVC.cameraIndex=0; - [[self getCurrentVC] setNavigationBarHidden:NO]; - [[self getCurrentVC] pushViewController:playBackVC animated:YES]; -// } - -} @end -- Gitblit v1.8.0