From dd29df2e08ac87c878e26513f1b5ae06eae7a6d9 Mon Sep 17 00:00:00 2001 From: Davin <591807572@qq.com> Date: 星期日, 25 六月 2023 19:54:32 +0800 Subject: [PATCH] feature UI调整 --- EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_balance.imageset/Contents.json | 22 + EZSDK/EZSDK/EZ/UIViewControllers/EZLivePlayViewController.m | 125 ++++++ EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_sound_off.imageset/Contents.json | 22 + EZDemo/HDLEZDemo/HDLEZDemo/libEZSDK.a | 0 EZSDK/EZSDK.xcodeproj/project.pbxproj | 12 EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_hd_full.imageset/Contents.json | 22 + EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_hd_full.imageset/hdl_ez_cat_eyes_full_hd_full@3x.png | 0 EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_smooth.imageset/hdl_ez_cat_eyes_full_smooth@3x.png | 0 EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_sound_off.imageset/hdl_ez_cat_eyes_full_sound_off@3x.png | 0 EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_hd_full.imageset/hdl_ez_cat_eyes_full_hd_full@2x.png | 0 EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_play.imageset/Contents.json | 22 + EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZVideoDoorToolView.m | 292 ++++++++++++++++++ EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_play.imageset/hdl_ez_cat_eyes_full_play@3x.png | 0 EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZVideoQualityBoxView.m | 164 ++++++++++ EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_hang_up.imageset/hdl_ez_cat_eyes_full_hang_up@2x.png | 0 EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_pause.imageset/Contents.json | 22 + EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_play.imageset/hdl_ez_cat_eyes_full_play@2x.png | 0 EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_exit.imageset/Contents.json | 22 + EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_smooth.imageset/hdl_ez_cat_eyes_full_smooth@2x.png | 0 EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_hang_up.imageset/Contents.json | 22 + EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_pause.imageset/hdl_ez_cat_eyes_full_pause@3x.png | 0 EZDemo/HDLEZDemo/HDLEZDemo/AppDelegate.m | 4 EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZVideoDoorToolView.h | 47 ++ EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_balance.imageset/hdl_ez_cat_eyes_full_balance@2x.png | 0 EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_volume.imageset/Contents.json | 22 + EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_sound_off.imageset/hdl_ez_cat_eyes_full_sound_off@2x.png | 0 EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZVideoQualityBoxView.h | 30 + EZDemo/HDLEZDemo/HDLEZDemo/resources/en.lproj/Localizable.strings | 6 EZDemo/HDLEZDemo/HDLEZDemo/ViewController.m | 2 EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_smooth.imageset/Contents.json | 22 + EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_pause.imageset/hdl_ez_cat_eyes_full_pause@2x.png | 0 EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_volume.imageset/hdl_ez_cat_eyes_full_volume@2x.png | 0 EZSDK/EZSDK/EZ/UIViewControllers/EZSettingViewController.m | 7 EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_exit.imageset/hdl_ez_cat_eyes_full_exit@2x.png | 0 EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_balance.imageset/hdl_ez_cat_eyes_full_balance@3x.png | 0 EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_exit.imageset/hdl_ez_cat_eyes_full_exit@3x.png | 0 EZDemo/HDLEZDemo/HDLEZDemo/EZMain.storyboard | 9 EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_volume.imageset/hdl_ez_cat_eyes_full_volume@3x.png | 0 EZDemo/HDLEZDemo/HDLEZDemo/resources/zh-Hans.lproj/Localizable.strings | 6 EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_hang_up.imageset/hdl_ez_cat_eyes_full_hang_up@3x.png | 0 40 files changed, 879 insertions(+), 23 deletions(-) diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/AppDelegate.m b/EZDemo/HDLEZDemo/HDLEZDemo/AppDelegate.m index 55783a5..b64a256 100644 --- a/EZDemo/HDLEZDemo/HDLEZDemo/AppDelegate.m +++ b/EZDemo/HDLEZDemo/HDLEZDemo/AppDelegate.m @@ -25,10 +25,10 @@ // Override point for customization after application launch. [[EZSDK sharedInstance] initLibWithAppKey:@"1aa98a90489b4838b966b57018b4b04b" globalAppKey:@"1aa98a90489b4838b966b57018b4b04b"]; // [[EZSDK sharedInstance] initLibWithAppKey:@"941b1b72b6294998acfd36c14931b675" globalAppKey:@"941b1b72b6294998acfd36c14931b675"]; - [[EZSDK sharedInstance] setHDlAccessToken:@"Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJqdGkiOiIyM2UwOTM3YjliNGU0YzU4YWUxMzRiODdlNzkxY2M0NSIsImNvbXBhbnlJZCI6IjAiLCJyb2xlIjoiIiwiaGVhZGVyUHJlZml4IjoiQmVhcmVyICIsInRlbmFudElkIjoiMjAiLCJ1c2VyVHlwZSI6IlVTRVJfQyIsInRva2VuVHlwZSI6ImFjY2Vzc190b2tlbiIsInVzZXJOYW1lIjoiS2FlZGUiLCJ1c2VyRGF0YVJpZ2h0IjoiMSIsIm9wZW5BcHBsaWNhdGlvbklkIjoiMCIsInVzZXJJZCI6IjEzNTAyODA5OTU5OTg4NjMzNjEiLCJleHAiOjE2ODcxNzY4NDgsIm5iZiI6MTY4NzE2OTY0OH0.XqlQEtiyKvoVSo3HmDOW9LSRhdJI7KOGWEOLDCerb0Nod_rDnjPYvYuPct-vPGYhXklEqqcPz0vILHimmS3VpJj04O_5q_Rgsjnpp11rUJ2CxoqZmXAdpfis5HHeIj3n_UVg1exCjsyK-DOdEijIgaToGrLuHM5uvgfD_nvvNDI" refreshToken:@"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJqdGkiOiI2MWI3Y2Y4YmFlMjY0NzMyYjc5YjFiYWUzMzE3NzYxMSIsImNvbXBhbnlJZCI6IjAiLCJoZWFkZXJQcmVmaXgiOiJCZWFyZXIgIiwidGVuYW50SWQiOiIyMCIsInRva2VuVHlwZSI6InJlZnJlc2hfdG9rZW4iLCJvcGVuQXBwbGljYXRpb25JZCI6IjAiLCJ1c2VySWQiOiIxMzUwMjgwOTk1OTk4ODYzMzYxIiwiZXhwIjoxNjg3Nzc0NDQ4LCJuYmYiOjE2ODcxNjk2NDh9.eUcIwEGgpX3xSLvLfSlyANsTNpi0IHGkspF2O3igyRIDUWcQcs8fPouLBzXf29y87_A9AuCURI6ZAj5OPnC9xafQkgnV9_KTBAG62kGTRbAGiOBiAtyJmD6HQ4zUuI8sNmzoI67ewhu2gCQPFPoHOlJ8duODpbSk3NkUrYvxL2k"]; + [[EZSDK sharedInstance] setHDlAccessToken:@"Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJqdGkiOiI0YThmMmEzYzEwNTc0ZmVhYjA5MjAxMjExNDY0NjZjMiIsImNvbXBhbnlJZCI6IjAiLCJyb2xlIjoiIiwiaGVhZGVyUHJlZml4IjoiQmVhcmVyICIsInRlbmFudElkIjoiMjAiLCJ1c2VyVHlwZSI6IlVTRVJfQyIsInRva2VuVHlwZSI6ImFjY2Vzc190b2tlbiIsInVzZXJOYW1lIjoiS2FlZGUiLCJ1c2VyRGF0YVJpZ2h0IjoiMSIsIm9wZW5BcHBsaWNhdGlvbklkIjoiMCIsInVzZXJJZCI6IjEzNTAyODA5OTU5OTg4NjMzNjEiLCJleHAiOjE2ODc2NzE5NzcsIm5iZiI6MTY4NzY2NDc3N30.XZlwfkpHjBFynLbt7bQt7toCV_nHtPTnPmjhbpwsnzrywE2zVZv_8HcvF6OaZZYORrb2DAHQ6hCagQ6mwwBu8dJ0IJM3GDj98WPwIJh9tbMA9zData1erk0nZto2HeP4jVVMFkBGcfdyZd2npeAOa38oAGvER18RCr_P_7u6vJs" refreshToken:@"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJqdGkiOiI4YmE0MjdmOTQ2MTU0YzUzYTAyZmZjYTE0MTY1M2YyNyIsImNvbXBhbnlJZCI6IjAiLCJoZWFkZXJQcmVmaXgiOiJCZWFyZXIgIiwidGVuYW50SWQiOiIyMCIsInRva2VuVHlwZSI6InJlZnJlc2hfdG9rZW4iLCJvcGVuQXBwbGljYXRpb25JZCI6IjAiLCJ1c2VySWQiOiIxMzUwMjgwOTk1OTk4ODYzMzYxIiwiZXhwIjoxNjg4Mjc2NjA2LCJuYmYiOjE2ODc2NzE4MDZ9.OaPGX7jUBaOJQKQdlrIACI68KKCitgH0Q_QdDX29R1LGe7wM2q2trlHgeX1si5NrJeBQo0W1zwdk5aFccAq64DqZs9Vl6B3QJZKs1EScQCHLhrZcBSL1z_mge2qkKyXTsLSMVIBYMRwcQg7dh7fXrofn50BhDjBDYqKS25t2Mn4"]; // [[EZSDK sharedInstance] setRequestHttpsHostAndPlatform:@"https://test-gz.hdlcontrol.com" platform:1 homeId:@"1547099040465408002"]; [[EZSDK sharedInstance] setRequestHttpsHostAndPlatform:@"https://nearest.hdlcontrol.com" platform:1 homeId:@"1546324800135176193"]; - [[EZSDK sharedInstance] setEZAccessToken:@"ra.6noaub1s86aqfnbz56vp17q2cn7w5bqp-1lbac5acq7-1m25l9w-ai5d2u8gp"]; + [[EZSDK sharedInstance] setEZAccessToken:@"ra.6zihimwgdtix1asfaq5ter8a37ukrvzl-9697ojgbfn-0xo05zz-tgxzohe4l"]; // [[EZSDK sharedInstance] setEZAccessToken:@"ra.3hkirwcadrpfmaa89wep99io3wto4yds-7zptb10d20-1wxg4f3-ygiojudee"]; diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_balance.imageset/Contents.json b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_balance.imageset/Contents.json new file mode 100644 index 0000000..f653044 --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_balance.imageset/Contents.json @@ -0,0 +1,22 @@ +{ + "images" : [ + { + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "hdl_ez_cat_eyes_full_balance@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "hdl_ez_cat_eyes_full_balance@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_balance.imageset/hdl_ez_cat_eyes_full_balance@2x.png b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_balance.imageset/hdl_ez_cat_eyes_full_balance@2x.png new file mode 100644 index 0000000..5f574f3 --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_balance.imageset/hdl_ez_cat_eyes_full_balance@2x.png Binary files differ diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_balance.imageset/hdl_ez_cat_eyes_full_balance@3x.png b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_balance.imageset/hdl_ez_cat_eyes_full_balance@3x.png new file mode 100644 index 0000000..ab72115 --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_balance.imageset/hdl_ez_cat_eyes_full_balance@3x.png Binary files differ diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_exit.imageset/Contents.json b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_exit.imageset/Contents.json new file mode 100644 index 0000000..010c7ba --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_exit.imageset/Contents.json @@ -0,0 +1,22 @@ +{ + "images" : [ + { + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "hdl_ez_cat_eyes_full_exit@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "hdl_ez_cat_eyes_full_exit@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_exit.imageset/hdl_ez_cat_eyes_full_exit@2x.png b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_exit.imageset/hdl_ez_cat_eyes_full_exit@2x.png new file mode 100644 index 0000000..5d8c01b --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_exit.imageset/hdl_ez_cat_eyes_full_exit@2x.png Binary files differ diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_exit.imageset/hdl_ez_cat_eyes_full_exit@3x.png b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_exit.imageset/hdl_ez_cat_eyes_full_exit@3x.png new file mode 100644 index 0000000..a521e39 --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_exit.imageset/hdl_ez_cat_eyes_full_exit@3x.png Binary files differ diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_hang_up.imageset/Contents.json b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_hang_up.imageset/Contents.json new file mode 100644 index 0000000..697786c --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_hang_up.imageset/Contents.json @@ -0,0 +1,22 @@ +{ + "images" : [ + { + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "hdl_ez_cat_eyes_full_hang_up@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "hdl_ez_cat_eyes_full_hang_up@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_hang_up.imageset/hdl_ez_cat_eyes_full_hang_up@2x.png b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_hang_up.imageset/hdl_ez_cat_eyes_full_hang_up@2x.png new file mode 100644 index 0000000..0756954 --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_hang_up.imageset/hdl_ez_cat_eyes_full_hang_up@2x.png Binary files differ diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_hang_up.imageset/hdl_ez_cat_eyes_full_hang_up@3x.png b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_hang_up.imageset/hdl_ez_cat_eyes_full_hang_up@3x.png new file mode 100644 index 0000000..b43e3e0 --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_hang_up.imageset/hdl_ez_cat_eyes_full_hang_up@3x.png Binary files differ diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_hd_full.imageset/Contents.json b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_hd_full.imageset/Contents.json new file mode 100644 index 0000000..8b9e0ed --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_hd_full.imageset/Contents.json @@ -0,0 +1,22 @@ +{ + "images" : [ + { + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "hdl_ez_cat_eyes_full_hd_full@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "hdl_ez_cat_eyes_full_hd_full@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_hd_full.imageset/hdl_ez_cat_eyes_full_hd_full@2x.png b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_hd_full.imageset/hdl_ez_cat_eyes_full_hd_full@2x.png new file mode 100644 index 0000000..d5d902e --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_hd_full.imageset/hdl_ez_cat_eyes_full_hd_full@2x.png Binary files differ diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_hd_full.imageset/hdl_ez_cat_eyes_full_hd_full@3x.png b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_hd_full.imageset/hdl_ez_cat_eyes_full_hd_full@3x.png new file mode 100644 index 0000000..94b7cfa --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_hd_full.imageset/hdl_ez_cat_eyes_full_hd_full@3x.png Binary files differ diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_pause.imageset/Contents.json b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_pause.imageset/Contents.json new file mode 100644 index 0000000..bd4501f --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_pause.imageset/Contents.json @@ -0,0 +1,22 @@ +{ + "images" : [ + { + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "hdl_ez_cat_eyes_full_pause@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "hdl_ez_cat_eyes_full_pause@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_pause.imageset/hdl_ez_cat_eyes_full_pause@2x.png b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_pause.imageset/hdl_ez_cat_eyes_full_pause@2x.png new file mode 100644 index 0000000..25b9d43 --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_pause.imageset/hdl_ez_cat_eyes_full_pause@2x.png Binary files differ diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_pause.imageset/hdl_ez_cat_eyes_full_pause@3x.png b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_pause.imageset/hdl_ez_cat_eyes_full_pause@3x.png new file mode 100644 index 0000000..69070c0 --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_pause.imageset/hdl_ez_cat_eyes_full_pause@3x.png Binary files differ diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_play.imageset/Contents.json b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_play.imageset/Contents.json new file mode 100644 index 0000000..abae3be --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_play.imageset/Contents.json @@ -0,0 +1,22 @@ +{ + "images" : [ + { + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "hdl_ez_cat_eyes_full_play@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "hdl_ez_cat_eyes_full_play@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_play.imageset/hdl_ez_cat_eyes_full_play@2x.png b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_play.imageset/hdl_ez_cat_eyes_full_play@2x.png new file mode 100644 index 0000000..b01fbd1 --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_play.imageset/hdl_ez_cat_eyes_full_play@2x.png Binary files differ diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_play.imageset/hdl_ez_cat_eyes_full_play@3x.png b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_play.imageset/hdl_ez_cat_eyes_full_play@3x.png new file mode 100644 index 0000000..1b153e5 --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_play.imageset/hdl_ez_cat_eyes_full_play@3x.png Binary files differ diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_smooth.imageset/Contents.json b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_smooth.imageset/Contents.json new file mode 100644 index 0000000..d130107 --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_smooth.imageset/Contents.json @@ -0,0 +1,22 @@ +{ + "images" : [ + { + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "hdl_ez_cat_eyes_full_smooth@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "hdl_ez_cat_eyes_full_smooth@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_smooth.imageset/hdl_ez_cat_eyes_full_smooth@2x.png b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_smooth.imageset/hdl_ez_cat_eyes_full_smooth@2x.png new file mode 100644 index 0000000..9d63183 --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_smooth.imageset/hdl_ez_cat_eyes_full_smooth@2x.png Binary files differ diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_smooth.imageset/hdl_ez_cat_eyes_full_smooth@3x.png b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_smooth.imageset/hdl_ez_cat_eyes_full_smooth@3x.png new file mode 100644 index 0000000..efaf68b --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_smooth.imageset/hdl_ez_cat_eyes_full_smooth@3x.png Binary files differ diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_sound_off.imageset/Contents.json b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_sound_off.imageset/Contents.json new file mode 100644 index 0000000..7d11d30 --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_sound_off.imageset/Contents.json @@ -0,0 +1,22 @@ +{ + "images" : [ + { + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "hdl_ez_cat_eyes_full_sound_off@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "hdl_ez_cat_eyes_full_sound_off@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_sound_off.imageset/hdl_ez_cat_eyes_full_sound_off@2x.png b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_sound_off.imageset/hdl_ez_cat_eyes_full_sound_off@2x.png new file mode 100644 index 0000000..dfb539c --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_sound_off.imageset/hdl_ez_cat_eyes_full_sound_off@2x.png Binary files differ diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_sound_off.imageset/hdl_ez_cat_eyes_full_sound_off@3x.png b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_sound_off.imageset/hdl_ez_cat_eyes_full_sound_off@3x.png new file mode 100644 index 0000000..331f2e9 --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_sound_off.imageset/hdl_ez_cat_eyes_full_sound_off@3x.png Binary files differ diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_volume.imageset/Contents.json b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_volume.imageset/Contents.json new file mode 100644 index 0000000..94f04cf --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_volume.imageset/Contents.json @@ -0,0 +1,22 @@ +{ + "images" : [ + { + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "hdl_ez_cat_eyes_full_volume@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "hdl_ez_cat_eyes_full_volume@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_volume.imageset/hdl_ez_cat_eyes_full_volume@2x.png b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_volume.imageset/hdl_ez_cat_eyes_full_volume@2x.png new file mode 100644 index 0000000..857ad1c --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_volume.imageset/hdl_ez_cat_eyes_full_volume@2x.png Binary files differ diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_volume.imageset/hdl_ez_cat_eyes_full_volume@3x.png b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_volume.imageset/hdl_ez_cat_eyes_full_volume@3x.png new file mode 100644 index 0000000..885bde1 --- /dev/null +++ b/EZDemo/HDLEZDemo/HDLEZDemo/Assets.xcassets/hdl_ez_cat_eyes_full_volume.imageset/hdl_ez_cat_eyes_full_volume@3x.png Binary files differ diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/EZMain.storyboard b/EZDemo/HDLEZDemo/HDLEZDemo/EZMain.storyboard index 6d0e440..3d04739 100644 --- a/EZDemo/HDLEZDemo/HDLEZDemo/EZMain.storyboard +++ b/EZDemo/HDLEZDemo/HDLEZDemo/EZMain.storyboard @@ -807,17 +807,16 @@ <subviews> <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="1Xz-5f-ZJx"> <rect key="frame" x="0.0" y="0.0" width="375" height="211"/> - <color key="backgroundColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> + <color key="backgroundColor" red="0.047058823530000002" green="0.054901960780000002" blue="0.062745098040000002" alpha="1" colorSpace="calibratedRGB"/> <constraints> <constraint firstAttribute="width" secondItem="1Xz-5f-ZJx" secondAttribute="height" multiplier="16:9" id="7NS-WA-bEr"/> </constraints> </view> </subviews> <constraints> - <constraint firstItem="1Xz-5f-ZJx" firstAttribute="centerY" secondItem="NRj-hs-uOI" secondAttribute="centerY" id="DTc-SB-nnD"/> + <constraint firstItem="1Xz-5f-ZJx" firstAttribute="top" secondItem="NRj-hs-uOI" secondAttribute="top" id="DTc-SB-nnD"/> <constraint firstAttribute="width" secondItem="NRj-hs-uOI" secondAttribute="height" multiplier="16:9" id="FHe-T4-BRJ"/> <constraint firstItem="1Xz-5f-ZJx" firstAttribute="width" secondItem="NRj-hs-uOI" secondAttribute="width" id="JfK-ti-Ys7"/> - <constraint firstItem="1Xz-5f-ZJx" firstAttribute="height" secondItem="NRj-hs-uOI" secondAttribute="height" id="QcN-dO-GL9"/> <constraint firstAttribute="bottom" secondItem="1Xz-5f-ZJx" secondAttribute="bottom" id="ted-kP-rO7"/> <constraint firstAttribute="trailing" secondItem="1Xz-5f-ZJx" secondAttribute="trailing" id="wA6-Da-kWF"/> <constraint firstItem="1Xz-5f-ZJx" firstAttribute="centerX" secondItem="NRj-hs-uOI" secondAttribute="centerX" id="zUn-i2-2qZ"/> @@ -968,7 +967,7 @@ </connections> </button> </subviews> - <color key="backgroundColor" red="0.20000000000000001" green="0.20000000000000001" blue="0.20000000000000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> + <color key="backgroundColor" red="0.047058823529411764" green="0.054901960784313725" blue="0.062745098039215685" alpha="1" colorSpace="calibratedRGB"/> <constraints> <constraint firstItem="xSp-4i-Jwh" firstAttribute="top" secondItem="1FE-Su-4U4" secondAttribute="top" id="1W5-cF-JRC"/> <constraint firstItem="lTh-qe-8pV" firstAttribute="top" secondItem="1FE-Su-4U4" secondAttribute="top" id="HsY-AZ-lgd"/> @@ -1422,6 +1421,8 @@ <outlet property="playButton" destination="xSp-4i-Jwh" id="DUU-ap-reQ"/> <outlet property="playerPlayButton" destination="yYv-tJ-QCV" id="EIB-lc-14l"/> <outlet property="playerView" destination="1Xz-5f-ZJx" id="tYS-5X-mCe"/> + <outlet property="playerViewBottomMargin" destination="ted-kP-rO7" id="oFs-an-sCu"/> + <outlet property="playerViewWHRatio" destination="7NS-WA-bEr" id="nAT-Lb-Z7I"/> <outlet property="ptzCloseButton" destination="Un0-bC-uwU" id="pBM-jg-Hsv"/> <outlet property="ptzControlButton" destination="cRL-ov-Bad" id="dO9-KY-Fpn"/> <outlet property="ptzDownButton" destination="YpD-H2-J3L" id="9Hs-IT-QQk"/> diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/ViewController.m b/EZDemo/HDLEZDemo/HDLEZDemo/ViewController.m index 4a5da22..c3d82ad 100644 --- a/EZDemo/HDLEZDemo/HDLEZDemo/ViewController.m +++ b/EZDemo/HDLEZDemo/HDLEZDemo/ViewController.m @@ -10,7 +10,7 @@ //钀ょ煶闂ㄩ攣spk #define HDLEZ_DOOR_SPK @"security.door.ezviz" -#define HDLEZ_DEVICEID @"1670680809556606978" +#define HDLEZ_DEVICEID @"1671450533475319810" //#define HDLEZ_DEVICESERIAL @"K36229010" #define HDLEZ_DEVICESERIAL @"J92513662" diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/libEZSDK.a b/EZDemo/HDLEZDemo/HDLEZDemo/libEZSDK.a index 7b678be..529743e 100644 --- a/EZDemo/HDLEZDemo/HDLEZDemo/libEZSDK.a +++ b/EZDemo/HDLEZDemo/HDLEZDemo/libEZSDK.a Binary files differ diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/resources/en.lproj/Localizable.strings b/EZDemo/HDLEZDemo/HDLEZDemo/resources/en.lproj/Localizable.strings index 25423a4..b5a4f81 100644 --- a/EZDemo/HDLEZDemo/HDLEZDemo/resources/en.lproj/Localizable.strings +++ b/EZDemo/HDLEZDemo/HDLEZDemo/resources/en.lproj/Localizable.strings @@ -112,6 +112,12 @@ "device_callout_hang_up" = "Hang up"; "device_callout_ignore" = "Ignore"; "device_callout_answer" = "Answer"; +"device_full_scene_play" = "play"; +"device_full_scene_pause" = "Pause"; +"device_full_scene_sound" = "Sound"; +"device_full_scene_sound_off" = "Sound off"; +"device_full_scene_quality" = "Articulation"; +"device_full_scene_exit_full" = "Exit"; "dmessage_title"="Message"; "message_read"="Mark as Read"; diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/resources/zh-Hans.lproj/Localizable.strings b/EZDemo/HDLEZDemo/HDLEZDemo/resources/zh-Hans.lproj/Localizable.strings index ebed68a..1a1a5b7 100644 --- a/EZDemo/HDLEZDemo/HDLEZDemo/resources/zh-Hans.lproj/Localizable.strings +++ b/EZDemo/HDLEZDemo/HDLEZDemo/resources/zh-Hans.lproj/Localizable.strings @@ -72,6 +72,12 @@ "device_callout_hang_up" = "鎸傛柇"; "device_callout_ignore" = "蹇界暐"; "device_callout_answer" = "鎺ュ惉"; +"device_full_scene_play" = "鎾斁"; +"device_full_scene_pause" = "鏆傚仠"; +"device_full_scene_sound" = "闊抽噺"; +"device_full_scene_sound_off" = "闈欓煶"; +"device_full_scene_quality" = "娓呮櫚搴�"; +"device_full_scene_exit_full" = "閫�鍑哄叏灞�"; "device_open"="寮�闂�"; "device_open_success"="寮�闂ㄦ垚鍔燂紒"; diff --git a/EZSDK/EZSDK.xcodeproj/project.pbxproj b/EZSDK/EZSDK.xcodeproj/project.pbxproj index a290e67..0c1eb5d 100644 --- a/EZSDK/EZSDK.xcodeproj/project.pbxproj +++ b/EZSDK/EZSDK.xcodeproj/project.pbxproj @@ -8,6 +8,8 @@ /* Begin PBXBuildFile section */ 830957C32A3AE3E1002B68AA /* HDLEZVideoDoorMsgCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 830957C22A3AE3E1002B68AA /* HDLEZVideoDoorMsgCell.m */; }; + 8357F1DE2A42DEC000936D2E /* HDLEZVideoDoorToolView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8357F1DD2A42DEC000936D2E /* HDLEZVideoDoorToolView.m */; }; + 83D69FFA2A47D32A00871258 /* HDLEZVideoQualityBoxView.m in Sources */ = {isa = PBXBuildFile; fileRef = 83D69FF92A47D32A00871258 /* HDLEZVideoQualityBoxView.m */; }; 83EE503D2A41C9BA0006435D /* HDLEZOPButton.m in Sources */ = {isa = PBXBuildFile; fileRef = 83EE503C2A41C9BA0006435D /* HDLEZOPButton.m */; }; AE31FE1F29CC2D2200678568 /* EZOpenSDKFramework.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AE31FE1E29CC2D2200678568 /* EZOpenSDKFramework.framework */; platformFilter = ios; }; AE5068D829B9DB5E009EA09A /* HDLEZTemInfoModel.m in Sources */ = {isa = PBXBuildFile; fileRef = AE5068D729B9DB5E009EA09A /* HDLEZTemInfoModel.m */; }; @@ -188,6 +190,10 @@ /* Begin PBXFileReference section */ 830957C12A3AE3E1002B68AA /* HDLEZVideoDoorMsgCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = HDLEZVideoDoorMsgCell.h; sourceTree = "<group>"; }; 830957C22A3AE3E1002B68AA /* HDLEZVideoDoorMsgCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = HDLEZVideoDoorMsgCell.m; sourceTree = "<group>"; }; + 8357F1DC2A42DEC000936D2E /* HDLEZVideoDoorToolView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = HDLEZVideoDoorToolView.h; sourceTree = "<group>"; }; + 8357F1DD2A42DEC000936D2E /* HDLEZVideoDoorToolView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = HDLEZVideoDoorToolView.m; sourceTree = "<group>"; }; + 83D69FF82A47D32A00871258 /* HDLEZVideoQualityBoxView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = HDLEZVideoQualityBoxView.h; sourceTree = "<group>"; }; + 83D69FF92A47D32A00871258 /* HDLEZVideoQualityBoxView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = HDLEZVideoQualityBoxView.m; sourceTree = "<group>"; }; 83EE503B2A41C9BA0006435D /* HDLEZOPButton.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = HDLEZOPButton.h; sourceTree = "<group>"; }; 83EE503C2A41C9BA0006435D /* HDLEZOPButton.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = HDLEZOPButton.m; sourceTree = "<group>"; }; AE31FE1E29CC2D2200678568 /* EZOpenSDKFramework.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = EZOpenSDKFramework.framework; sourceTree = "<group>"; }; @@ -669,6 +675,10 @@ AEDBFBA429C3072D005F6512 /* HDLEZDeviceMsgCell.m */, 830957C12A3AE3E1002B68AA /* HDLEZVideoDoorMsgCell.h */, 830957C22A3AE3E1002B68AA /* HDLEZVideoDoorMsgCell.m */, + 8357F1DC2A42DEC000936D2E /* HDLEZVideoDoorToolView.h */, + 8357F1DD2A42DEC000936D2E /* HDLEZVideoDoorToolView.m */, + 83D69FF82A47D32A00871258 /* HDLEZVideoQualityBoxView.h */, + 83D69FF92A47D32A00871258 /* HDLEZVideoQualityBoxView.m */, ); path = Views; sourceTree = "<group>"; @@ -1425,6 +1435,7 @@ files = ( B9BC99D225C0FFBD00C024FE /* UIButton+DDKit.m in Sources */, B9EA4E9325C7E806000FFDA2 /* MJRefreshFooter.m in Sources */, + 83D69FFA2A47D32A00871258 /* HDLEZVideoQualityBoxView.m in Sources */, B9BC99F125C0FFBD00C024FE /* UIImageView+WebCache.m in Sources */, B9BC99DA25C0FFBD00C024FE /* AFURLResponseSerialization.m in Sources */, B9BC99D525C0FFBD00C024FE /* UIRefreshControl+AFNetworking.m in Sources */, @@ -1578,6 +1589,7 @@ B9BC99A125C0FFBD00C024FE /* DDCollectionViewFlowLayout.m in Sources */, B9BC9A1E25C0FFBD00C024FE /* EZWifiInfoViewController.m in Sources */, 830957C32A3AE3E1002B68AA /* HDLEZVideoDoorMsgCell.m in Sources */, + 8357F1DE2A42DEC000936D2E /* HDLEZVideoDoorToolView.m in Sources */, AEF0148F29C188ED00D014FD /* HDLEZScrollView.m in Sources */, 83EE503D2A41C9BA0006435D /* HDLEZOPButton.m in Sources */, B9BC9A1925C0FFBD00C024FE /* EZAPWiFiConfigViewController.m in Sources */, diff --git a/EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZVideoDoorToolView.h b/EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZVideoDoorToolView.h new file mode 100644 index 0000000..36f401d --- /dev/null +++ b/EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZVideoDoorToolView.h @@ -0,0 +1,47 @@ +// +// HDLEZVideoDoorToolView.h +// EZSDK +// +// Created by Davin on 2023/6/21. +// + +#import <UIKit/UIKit.h> +#import "HDLEZVideoQualityBoxView.h" + +NS_ASSUME_NONNULL_BEGIN + +@interface HDLEZVideoDoorToolView : UIView + +@property (nonatomic, copy) void(^hangUpBlock)(void); +@property (nonatomic, copy) void(^playOrPauseBlock)(BOOL isPlaying); +@property (nonatomic, copy) void(^soundControlBlock)(BOOL soundOn); +@property (nonatomic, copy) void(^qualityControlBlock)(NSInteger videoLevel); +@property (nonatomic, copy) void(^exitFullSceneBlock)(void); + +/// 閰嶇疆瑙嗛鐩稿叧淇℃伅 +/// - Parameters: +/// - isPlaying: 鏄惁姝e湪鎾斁 +/// - soundOn: 闊抽噺寮� +/// - videoLevel: 娓呮櫚搴� +/// - fullOperation: 鍏ㄥ睆鏃剁殑鎿嶄綔 +- (void)configPlayStatus:(BOOL)isPlaying soundOn:(BOOL)soundOn videoLevel:(NSInteger)videoLevel toolOperation:(void(^)(HDLEZVideoFullSceneOperation operationType))fullOperation; + +/// 璁剧疆鎾斁鐘舵�� +/// - Parameter isPlaying: 鎾斁鐘舵�� +- (void)playStatus:(BOOL)isPlaying; + +/// 闊抽噺璁剧疆 +/// - Parameter soundOn: 鏄惁寮�鍚煶閲� +- (void)soundOn:(BOOL)soundOn; + +/// 娓呮櫚搴﹁缃� +/// - Parameter videoLevel: 娓呮櫚搴� +- (void)videoLevel:(NSInteger)videoLevel; + +/// 鍝嶉搩淇℃伅 +/// - Parameter isRing: 鏄惁姝e湪鍝嶉搩馃敂 +- (void)ringRingRing:(BOOL)isRing; + +@end + +NS_ASSUME_NONNULL_END diff --git a/EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZVideoDoorToolView.m b/EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZVideoDoorToolView.m new file mode 100644 index 0000000..74053b2 --- /dev/null +++ b/EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZVideoDoorToolView.m @@ -0,0 +1,292 @@ +// +// HDLEZVideoDoorToolView.m +// EZSDK +// +// Created by Davin on 2023/6/21. +// + +#import "HDLEZVideoDoorToolView.h" +#import "HDLEZOPButton.h" + +@interface HDLEZVideoDoorToolView () + +@property (nonatomic, strong) HDLEZOPButton *hangUpButton; // 鎸傛柇鎸夐挳 +@property (nonatomic, strong) UIView *baseToolView; // 宸ュ叿瑙嗗浘 +@property (nonatomic, strong) HDLEZOPButton *playButton; // 鎾斁/鏆傚仠 +@property (nonatomic, strong) HDLEZOPButton *volumeButton; // 闊抽噺寮�鍚�/鍏抽棴 +@property (nonatomic, strong) HDLEZOPButton *qualityButton; // 娓呮櫚搴� +@property (nonatomic, strong) HDLEZOPButton *fullSceneButton; // 閫�鍑哄叏灞� + +@property (nonatomic, strong) HDLEZVideoQualityBoxView *qualityBox; // 娓呮櫚搴﹀脊妗嗚鍥� + +@property (nonatomic, assign) BOOL isPlaying; // 鏄惁姝e湪鎾斁 +@property (nonatomic, assign) BOOL soundOn; // 闊抽噺鏄惁寮�鍚� +@property (nonatomic, assign) NSInteger videoLevel; // 娓呮櫚搴� + +@property (nonatomic, copy) void(^fullOperation)(HDLEZVideoFullSceneOperation operationType); + +@end + +@implementation HDLEZVideoDoorToolView + +- (instancetype)initWithFrame:(CGRect)frame { + if (self = [super initWithFrame:frame]) { + [self createSubviews]; + } + return self; +} + +- (void)createSubviews { + self.backgroundColor = [UIColor clearColor]; + [self addSubview:self.hangUpButton]; + [self addSubview:self.baseToolView]; + [self addSubview:self.playButton]; + [self addSubview:self.volumeButton]; + [self addSubview:self.qualityButton]; + [self addSubview:self.fullSceneButton]; + [self addSubview:self.qualityBox]; + + [self.hangUpButton mas_makeConstraints:^(MASConstraintMaker *make) { + make.bottom.mas_equalTo(self.baseToolView.mas_top).offset(-40); + make.centerX.mas_equalTo(self.mas_centerX); + make.width.mas_equalTo(70); + make.height.mas_equalTo(110); + }]; + + [self.baseToolView mas_makeConstraints:^(MASConstraintMaker *make) { + make.left.mas_equalTo(self.mas_left).offset(16.); + make.bottom.mas_equalTo(self.mas_bottom).offset(-37.); + make.right.mas_equalTo(self.mas_right).offset(-16.); + make.height.mas_equalTo(102); + }]; + + [self.playButton mas_makeConstraints:^(MASConstraintMaker *make) { + make.left.mas_equalTo(self.baseToolView.mas_left).offset(12.); + make.centerY.mas_equalTo(self.baseToolView.mas_centerY); + make.height.mas_equalTo(70); + }]; + + [self.volumeButton mas_makeConstraints:^(MASConstraintMaker *make) { + make.left.mas_equalTo(self.playButton.mas_right).offset(21.); + make.centerY.mas_equalTo(self.baseToolView.mas_centerY); + make.width.mas_equalTo(self.playButton.mas_width).multipliedBy(1.); + make.height.mas_equalTo(self.playButton.mas_height).multipliedBy(1.); + }]; + + [self.qualityButton mas_makeConstraints:^(MASConstraintMaker *make) { + make.left.mas_equalTo(self.volumeButton.mas_right).offset(21.); + make.centerY.mas_equalTo(self.baseToolView.mas_centerY); + make.width.mas_equalTo(self.playButton.mas_width).multipliedBy(1.); + make.height.mas_equalTo(self.playButton.mas_height).multipliedBy(1.); + }]; + + [self.fullSceneButton mas_makeConstraints:^(MASConstraintMaker *make) { + make.left.mas_equalTo(self.qualityButton.mas_right).offset(21.); + make.right.mas_equalTo(self.baseToolView.mas_right).offset(-12); + make.centerY.mas_equalTo(self.baseToolView.mas_centerY); + make.width.mas_equalTo(self.playButton.mas_width).multipliedBy(1.); + make.height.mas_equalTo(self.playButton.mas_height).multipliedBy(1.); + }]; + + [self.qualityBox mas_makeConstraints:^(MASConstraintMaker *make) { + make.bottom.mas_equalTo(self.baseToolView.mas_top); + make.centerX.mas_equalTo(self.qualityButton.mas_centerX); + make.width.mas_equalTo(80); + make.height.mas_equalTo(168); + }]; + + [self.hangUpButton addTarget:self action:@selector(hangUpAction) forControlEvents:UIControlEventTouchUpInside]; + [self.playButton addTarget:self action:@selector(playAction) forControlEvents:UIControlEventTouchUpInside]; + [self.volumeButton addTarget:self action:@selector(volumeAction) forControlEvents:UIControlEventTouchUpInside]; + [self.qualityButton addTarget:self action:@selector(qualityAction) forControlEvents:UIControlEventTouchUpInside]; + [self.fullSceneButton addTarget:self action:@selector(fullSceneAction) forControlEvents:UIControlEventTouchUpInside]; + + __weak HDLEZVideoDoorToolView *weakself = self; + [self.qualityBox videoQualityChange:^(HDLEZVideoFullSceneOperation operationType) { + if (weakself.fullOperation) { + weakself.fullOperation(operationType); + } + + [weakself qualityAction]; + + if (operationType == HDLEZVideoFullSceneOperationOfSmooth) { + [weakself videoLevel:0]; + } else if (operationType == HDLEZVideoFullSceneOperationOfSmooth) { + [weakself videoLevel:1]; + } else if (operationType == HDLEZVideoFullSceneOperationOfSmooth) { + [weakself videoLevel:2]; + } + }]; +} + +#pragma mark - PublishMethod +- (void)configPlayStatus:(BOOL)isPlaying soundOn:(BOOL)soundOn videoLevel:(NSInteger)videoLevel toolOperation:(void(^)(HDLEZVideoFullSceneOperation operationType))fullOperation { +// self.isPlaying = isPlaying; +// self.soundOn = soundOn; +// self.videoLevel = videoLevel; + self.fullOperation = fullOperation; + + [self playStatus:isPlaying]; + [self soundOn:soundOn]; + [self videoLevel:videoLevel]; +} + +/// 璁剧疆鎾斁鐘舵�� +/// - Parameter isPlaying: 鎾斁鐘舵�� +- (void)playStatus:(BOOL)isPlaying { + self.isPlaying = isPlaying; + self.playButton.selected = !isPlaying; +} + +/// 闊抽噺璁剧疆 +/// - Parameter soundOn: 鏄惁寮�鍚煶閲� +- (void)soundOn:(BOOL)soundOn { + self.soundOn = soundOn; + self.volumeButton.selected = !soundOn; + NSLog(@"######%@澹伴煶", soundOn ? @"寮�鍚�" : @"鍏抽棴"); +} + +/// 娓呮櫚搴﹁缃� +/// - Parameter videoLevel: 娓呮櫚搴� +- (void)videoLevel:(NSInteger)videoLevel { + self.videoLevel = self.videoLevel; + if (videoLevel == 0) { + [self.qualityButton setImage:[UIImage imageNamed:@"hdl_ez_cat_eyes_full_smooth"] forState:UIControlStateNormal]; + } else if (videoLevel == 1) { + [self.qualityButton setImage:[UIImage imageNamed:@"hdl_ez_cat_eyes_full_balance"] forState:UIControlStateNormal]; + } else if (videoLevel == 2) { + [self.qualityButton setImage:[UIImage imageNamed:@"hdl_ez_cat_eyes_full_hd_full"] forState:UIControlStateNormal]; + } +} + +- (void)ringRingRing:(BOOL)isRing { + self.hangUpButton.hidden = !isRing; +} + +#pragma mark - PrivateMethod +- (void)hangUpAction { + if (self.fullOperation) { + self.fullOperation(HDLEZVideoFullSceneOperationOfHangUp); + } +} + +- (void)playAction { + [self playStatus:!self.isPlaying]; + if (self.fullOperation) { + self.fullOperation(self.isPlaying ? HDLEZVideoFullSceneOperationOfPause : HDLEZVideoFullSceneOperationOfPlay); + } +} + +- (void)volumeAction { + [self soundOn:!self.soundOn]; + if (self.fullOperation) { + self.fullOperation(self.soundOn ? HDLEZVideoFullSceneOperationOfSound : HDLEZVideoFullSceneOperationOfSoundOff); + } +} + +- (void)qualityAction { +// if (self.qualityControlBlock) { +// self.qualityControlBlock(self.videoLevel); +// } + self.qualityButton.selected = !self.qualityButton.selected; + self.qualityBox.hidden = !self.qualityButton.selected; +} + +- (void)fullSceneAction { + if (self.fullOperation) { + self.fullOperation(HDLEZVideoFullSceneOperationOfExitFull); + } +} + +#pragma mark - Getter +- (HDLEZOPButton *)hangUpButton { + if (!_hangUpButton) { + _hangUpButton = [HDLEZOPButton buttonWithType:UIButtonTypeCustom]; + _hangUpButton.imagePosition = HDLEZOPButtonImagePositionTop; + _hangUpButton.spacingBetweenImageAndTitle = 12.; + [_hangUpButton setTitle:NSLocalizedString(@"device_callout_hang_up", @"鎸傛柇") forState:UIControlStateNormal]; + [_hangUpButton setTitleColor:HDLEZ_COLOR_TEXT_WHITE forState:UIControlStateNormal]; + _hangUpButton.titleLabel.font = HDLEZ_Get_FontRegularWithSize(HDLEZ_FontSize_14); + [_hangUpButton setImage:[UIImage imageNamed:@"hdl_ez_cat_eyes_full_hang_up"] forState:UIControlStateNormal]; + _hangUpButton.hidden = YES; + } + return _hangUpButton; +} + +- (UIView *)baseToolView { + if (!_baseToolView) { + _baseToolView = [[UIView alloc] init]; + _baseToolView.backgroundColor = HDLEZHEXCOLOR(0xFFFFFF, 0.16); + _baseToolView.layer.cornerRadius = 16.; + _baseToolView.clipsToBounds = YES; + } + return _baseToolView; +} + +- (HDLEZOPButton *)playButton { + if (!_playButton) { + _playButton = [HDLEZOPButton buttonWithType:UIButtonTypeCustom]; + _playButton.imagePosition = HDLEZOPButtonImagePositionTop; + _playButton.spacingBetweenImageAndTitle = 8.; + [_playButton setTitle:NSLocalizedString(@"device_full_scene_pause", @"鏆傚仠") forState:UIControlStateNormal]; + [_playButton setTitle:NSLocalizedString(@"device_full_scene_play", @"鎾斁") forState:UIControlStateSelected]; + [_playButton setTitleColor:HDLEZ_COLOR_TEXT_WHITE forState:UIControlStateNormal]; + _playButton.titleLabel.font = HDLEZ_Get_FontRegularWithSize(HDLEZ_FontSize_14); + [_playButton setImage:[UIImage imageNamed:@"hdl_ez_cat_eyes_full_pause"] forState:UIControlStateNormal]; + [_playButton setImage:[UIImage imageNamed:@"hdl_ez_cat_eyes_full_play"] forState:UIControlStateSelected]; + _playButton.selected = NO; + } + return _playButton; +} + +- (HDLEZOPButton *)volumeButton { + if (!_volumeButton) { + _volumeButton = [HDLEZOPButton buttonWithType:UIButtonTypeCustom]; + _volumeButton.imagePosition = HDLEZOPButtonImagePositionTop; + _volumeButton.spacingBetweenImageAndTitle = 8.; + [_volumeButton setTitle:NSLocalizedString(@"device_full_scene_sound", @"闊抽噺") forState:UIControlStateNormal]; + [_volumeButton setTitle:NSLocalizedString(@"device_full_scene_sound_off", @"闈欓煶") forState:UIControlStateSelected]; + [_volumeButton setTitleColor:HDLEZ_COLOR_TEXT_WHITE forState:UIControlStateNormal]; + _volumeButton.titleLabel.font = HDLEZ_Get_FontRegularWithSize(HDLEZ_FontSize_14); + [_volumeButton setImage:[UIImage imageNamed:@"hdl_ez_cat_eyes_full_volume"] forState:UIControlStateNormal]; + [_volumeButton setImage:[UIImage imageNamed:@"hdl_ez_cat_eyes_full_sound_off"] forState:UIControlStateSelected]; + _volumeButton.selected = NO; + } + return _volumeButton; +} + +- (HDLEZOPButton *)qualityButton { + if (!_qualityButton) { + _qualityButton = [HDLEZOPButton buttonWithType:UIButtonTypeCustom]; + _qualityButton.imagePosition = HDLEZOPButtonImagePositionTop; + _qualityButton.spacingBetweenImageAndTitle = 8.; + [_qualityButton setTitle:NSLocalizedString(@"device_full_scene_quality", @"娓呮櫚搴�") forState:UIControlStateNormal]; + [_qualityButton setTitleColor:HDLEZ_COLOR_TEXT_WHITE forState:UIControlStateNormal]; + _qualityButton.titleLabel.font = HDLEZ_Get_FontRegularWithSize(HDLEZ_FontSize_14); + [_qualityButton setImage:[UIImage imageNamed:@"hdl_ez_cat_eyes_full_smooth"] forState:UIControlStateNormal]; + _qualityButton.selected = NO; + } + return _qualityButton; +} +- (HDLEZOPButton *)fullSceneButton { + if (!_fullSceneButton) { + _fullSceneButton = [HDLEZOPButton buttonWithType:UIButtonTypeCustom]; + _fullSceneButton.imagePosition = HDLEZOPButtonImagePositionTop; + _fullSceneButton.spacingBetweenImageAndTitle = 8.; + [_fullSceneButton setTitle:NSLocalizedString(@"device_full_scene_exit_full", @"閫�鍑哄叏灞�") forState:UIControlStateNormal]; + [_fullSceneButton setTitleColor:HDLEZ_COLOR_TEXT_WHITE forState:UIControlStateNormal]; + _fullSceneButton.titleLabel.font = HDLEZ_Get_FontRegularWithSize(HDLEZ_FontSize_14); + [_fullSceneButton setImage:[UIImage imageNamed:@"hdl_ez_cat_eyes_full_exit"] forState:UIControlStateNormal]; + } + return _fullSceneButton; +} + +- (HDLEZVideoQualityBoxView *)qualityBox { + if (!_qualityBox) { + _qualityBox = [[HDLEZVideoQualityBoxView alloc] init]; + _qualityBox.hidden = YES; + } + return _qualityBox; +} + +@end diff --git a/EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZVideoQualityBoxView.h b/EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZVideoQualityBoxView.h new file mode 100644 index 0000000..9080ed9 --- /dev/null +++ b/EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZVideoQualityBoxView.h @@ -0,0 +1,30 @@ +// +// HDLEZVideoQualityBoxView.h +// EZSDK +// +// Created by Davin on 2023/6/25. +// + +#import <UIKit/UIKit.h> + +NS_ASSUME_NONNULL_BEGIN + +typedef NS_ENUM(NSInteger, HDLEZVideoFullSceneOperation) { + HDLEZVideoFullSceneOperationOfHangUp = 0, // 鎸傛柇 + HDLEZVideoFullSceneOperationOfPlay, // 鎾斁 + HDLEZVideoFullSceneOperationOfPause, // 鏆傚仠 + HDLEZVideoFullSceneOperationOfSound, // 闊抽噺 + HDLEZVideoFullSceneOperationOfSoundOff, // 闈欓煶 + HDLEZVideoFullSceneOperationOfSmooth, // 娴佺晠 + HDLEZVideoFullSceneOperationOfBalance, // 鍧囪 + HDLEZVideoFullSceneOperationOfHDFull, // 楂樻竻 + HDLEZVideoFullSceneOperationOfExitFull, // 閫�鍑哄叏灞� +}; + +@interface HDLEZVideoQualityBoxView : UIView + +- (void)videoQualityChange:(void(^)(HDLEZVideoFullSceneOperation operationType))qualityBlock; + +@end + +NS_ASSUME_NONNULL_END diff --git a/EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZVideoQualityBoxView.m b/EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZVideoQualityBoxView.m new file mode 100644 index 0000000..3900409 --- /dev/null +++ b/EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZVideoQualityBoxView.m @@ -0,0 +1,164 @@ +// +// HDLEZVideoQualityBoxView.m +// EZSDK +// +// Created by Davin on 2023/6/25. +// + +#import "HDLEZVideoQualityBoxView.h" + +#define radiusValue 8. +#define arrowWidth 8. + +@interface HDLEZVideoQualityBoxView () + +@property (nonatomic, strong) UIButton *smoothBtn; +@property (nonatomic, strong) UIButton *balanceBtn; +@property (nonatomic, strong) UIButton *hdFullBtn; + +@property (nonatomic, copy) void(^qualityOperation)(HDLEZVideoFullSceneOperation operationType); + +@end + +@implementation HDLEZVideoQualityBoxView + +- (instancetype)initWithFrame:(CGRect)frame{ + if(self = [super initWithFrame:frame]){ + [self createSubviews]; + } + return self; +} + + +- (void)createSubviews { + self.backgroundColor = [UIColor clearColor]; + [self addSubview:self.smoothBtn]; + [self addSubview:self.balanceBtn]; + [self addSubview:self.hdFullBtn]; + + [self.smoothBtn mas_makeConstraints:^(MASConstraintMaker *make) { + make.top.mas_equalTo(self.mas_top); + make.left.mas_equalTo(self.mas_left); + make.right.mas_equalTo(self.mas_right); + }]; + + [self.balanceBtn mas_makeConstraints:^(MASConstraintMaker *make) { + make.top.mas_equalTo(self.smoothBtn.mas_bottom); + make.left.mas_equalTo(self.mas_left); + make.right.mas_equalTo(self.mas_right); + make.height.mas_equalTo(self.smoothBtn.mas_height); + }]; + + [self.hdFullBtn mas_makeConstraints:^(MASConstraintMaker *make) { + make.top.mas_equalTo(self.balanceBtn.mas_bottom); + make.left.mas_equalTo(self.mas_left); + make.bottom.mas_equalTo(self.mas_bottom).offset(-arrowWidth); + make.right.mas_equalTo(self.mas_right); + make.height.mas_equalTo(self.smoothBtn.mas_height); + }]; + + [self.smoothBtn addTarget:self action:@selector(selectedSmooth) forControlEvents:UIControlEventTouchUpInside]; + [self.balanceBtn addTarget:self action:@selector(selectedBalance) forControlEvents:UIControlEventTouchUpInside]; + [self.hdFullBtn addTarget:self action:@selector(selectedHdFull) forControlEvents:UIControlEventTouchUpInside]; +} + +- (void)drawRect:(CGRect)rect{ + CGFloat w = rect.size.width; + CGFloat h = rect.size.height; + UIBezierPath *path = [UIBezierPath bezierPath]; + UIColor *bgColor; + [path moveToPoint:CGPointMake(0, h - radiusValue - arrowWidth)]; + [path addArcWithCenter:CGPointMake(radiusValue, h - radiusValue - arrowWidth) + radius:radiusValue + startAngle:M_PI + endAngle:M_PI_2 + clockwise:NO]; + + [path addLineToPoint:CGPointMake(w/2. - arrowWidth, h - arrowWidth)]; + [path addLineToPoint:CGPointMake(w/2., h)]; + [path addLineToPoint:CGPointMake(w/2. + arrowWidth, h - arrowWidth)]; + + [path addLineToPoint:CGPointMake(w - radiusValue, h - arrowWidth)]; + [path addArcWithCenter:CGPointMake(w - radiusValue, h - radiusValue - arrowWidth) + radius:radiusValue + startAngle:M_PI_2 + endAngle:0 + clockwise:NO]; + [path addLineToPoint:CGPointMake(w, radiusValue)]; + [path addArcWithCenter:CGPointMake(w - radiusValue, radiusValue) + radius:radiusValue + startAngle:0 + endAngle:-M_PI_2 + clockwise:NO]; + [path addLineToPoint:CGPointMake(radiusValue, 0)]; + [path addArcWithCenter:CGPointMake(radiusValue, radiusValue) + radius:radiusValue + startAngle:-M_PI_2 + endAngle:-M_PI + clockwise:NO]; + [path addLineToPoint:CGPointMake(0, h - radiusValue - arrowWidth)]; + + + bgColor = HDLEZHEXCOLOR(0x292929, 1.); + [bgColor setFill]; + [path fill]; + + [path setLineWidth:0.5]; + [HDLEZHEXCOLOR(0x292929, 1.) setStroke]; + [path stroke]; + + [path closePath]; +} + +#pragma mark - PublishMethod +- (void)videoQualityChange:(void(^)(HDLEZVideoFullSceneOperation operationType))qualityBlock { + self.qualityOperation = qualityBlock; +} + +#pragma mark - PrivateMethod +- (void)selectedSmooth { + if (self.qualityOperation) { + self.qualityOperation(HDLEZVideoFullSceneOperationOfSmooth); + } +} + +- (void)selectedBalance { + if (self.qualityOperation) { + self.qualityOperation(HDLEZVideoFullSceneOperationOfBalance); + } +} + +- (void)selectedHdFull { + if (self.qualityOperation) { + self.qualityOperation(HDLEZVideoFullSceneOperationOfHDFull); + } +} + +#pragma mark - Getter +- (UIButton *)smoothBtn { + if (!_smoothBtn) { + _smoothBtn = [UIButton buttonWithType:UIButtonTypeCustom]; + [_smoothBtn setImage:[UIImage imageNamed:@"hdl_ez_cat_eyes_full_smooth"] forState:UIControlStateNormal]; + } + return _smoothBtn; +} + +- (UIButton *)balanceBtn { + if (!_balanceBtn) { + _balanceBtn = [UIButton buttonWithType:UIButtonTypeCustom]; + [_balanceBtn setImage:[UIImage imageNamed:@"hdl_ez_cat_eyes_full_balance"] forState:UIControlStateNormal]; + + } + return _balanceBtn; +} + +- (UIButton *)hdFullBtn { + if (!_hdFullBtn) { + _hdFullBtn = [UIButton buttonWithType:UIButtonTypeCustom]; + [_hdFullBtn setImage:[UIImage imageNamed:@"hdl_ez_cat_eyes_full_hd_full"] forState:UIControlStateNormal]; + + } + return _hdFullBtn; +} + +@end diff --git a/EZSDK/EZSDK/EZ/UIViewControllers/EZLivePlayViewController.m b/EZSDK/EZSDK/EZ/UIViewControllers/EZLivePlayViewController.m index 35c1a4c..155f7c6 100644 --- a/EZSDK/EZSDK/EZ/UIViewControllers/EZLivePlayViewController.m +++ b/EZSDK/EZSDK/EZ/UIViewControllers/EZLivePlayViewController.m @@ -25,6 +25,7 @@ #import <EZOpenSDKFramework/EZPMPlayPrivateTokenInfo.h> #import "HDLEZAlertInputView.h" #import "HDLEZOPButton.h" +#import "HDLEZVideoDoorToolView.h" #define MinimumZoomScale 1.0 #define MaximumZoomScale 4.0 @@ -49,6 +50,9 @@ @property (nonatomic, strong) HIKLoadView *loadingView; @property (nonatomic, weak) IBOutlet UIButton *playerPlayButton; @property (nonatomic, weak) IBOutlet UIView *playerView; +@property (weak, nonatomic) IBOutlet NSLayoutConstraint *playerViewWHRatio; +@property (weak, nonatomic) IBOutlet NSLayoutConstraint *playerViewBottomMargin; + @property (nonatomic, weak) IBOutlet UIView *toolBar; @property (nonatomic, weak) IBOutlet UIView *bottomView; @property (nonatomic, weak) IBOutlet UIButton *controlButton; @@ -98,6 +102,7 @@ @property (nonatomic, copy) NSString *streamToken; @property (nonatomic, strong) UIView *doorPlayerView;//闂ㄩ攣鎾斁view +@property (nonatomic, assign) CGFloat doorPlayerAspectRatio; // 闂ㄩ攣鎾斁瑙嗗浘瀹介珮姣� // 鍛煎彨瑙嗗浘鐩稿叧鎺т欢 @property (weak, nonatomic) IBOutlet UIView *videoCallOutView; // 鍛煎彨寮规 @@ -105,6 +110,8 @@ @property (weak, nonatomic) IBOutlet HDLEZOPButton *hangUpButton; // 鎸傛柇鎸夐挳 @property (weak, nonatomic) IBOutlet HDLEZOPButton *ignoreButton; // 蹇界暐鎸夐挳 @property (weak, nonatomic) IBOutlet HDLEZOPButton *answerButton; // 鎺ュ惉鎸夐挳 + +@property (strong, nonatomic) HDLEZVideoDoorToolView *fullSceneToolView; // 鍏ㄥ睆宸ュ叿瑙嗗浘 @end @@ -125,6 +132,8 @@ self.isStartingTalk = NO; self.ptzView.hidden = YES; self.talkView.hidden = YES; + self.videoCallOutView.hidden = YES; + self.doorPlayerAspectRatio = HDLEZ_APP_SCREEN_WIDTH / HDLEZ_APP_SCREEN_HEIGHT; _landscape = NO; if (!self.deviceInfo) {//濡傛灉娌℃湁浼燿eviceInfo,闇�涓诲姩鑾峰彇 @@ -374,6 +383,7 @@ [self.qualityButton setTitle:NSLocalizedString(@"device_quality_low",@"娴佺晠") forState:UIControlStateNormal]; } } +#warning 涓嶆敮鎸佸垏鎹㈡竻鏅板害锛屽叏灞忔椂涔熼渶瑕佷富鎸� if (_cameraInfo.cameraNo == 0 || [self.deviceInfo.deviceType containsString:@"CAS"]) { //涓嶆敮鎸佹竻鏅板害鍒囨崲 self.qualityButton.hidden = YES; } @@ -486,6 +496,13 @@ [self.answerButton setTitle:HDLEZLocallizedString(@"device_callout_answer") forState:UIControlStateNormal]; self.answerButton.imagePosition = HDLEZOPButtonImagePositionTop; self.answerButton.spacingBetweenImageAndTitle = 12.; + + // 闂ㄩ攣鍏ㄥ睆鐘舵�佷笅宸ュ叿鏍� + [self.view addSubview:self.fullSceneToolView]; + __weak EZLivePlayViewController *weakSelf = self; + [self.fullSceneToolView configPlayStatus:YES soundOn:YES videoLevel:1 toolOperation:^(HDLEZVideoFullSceneOperation operationType) { + [weakSelf doorLockFullSceneOperation:operationType]; + }]; } /*寮�閿� @@ -677,12 +694,13 @@ * @param width 瀹藉害 */ - (void)player:(EZPlayer *)player didReceivedDisplayHeight:(NSInteger)height displayWidth:(NSInteger)width{ -// HDLEZLog(@"鐢婚潰闀匡細%ld锛屽锛�%ld",(long)height,(long)width); + NSLog(@"鐢婚潰闀匡細%ld锛屽锛�%ld",(long)height,(long)width); CGFloat playerVH=self.playerView.frame.size.height; // HDLEZLog(@"楂橈細%ld",(long)playerVH); CGFloat ratio=((CGFloat)width)/((CGFloat)height); -// HDLEZLog(@"姣斾緥锛�%f",ratio); + NSLog(@"姣斾緥锛�%f",ratio); CGFloat playerVW=playerVH*ratio; + self.doorPlayerAspectRatio = ratio; // HDLEZLog(@"瀹斤細%ld",(long)playerVW); [self.doorPlayerView mas_updateConstraints:^(MASConstraintMaker *make) { make.width.mas_equalTo(_doorPlayerView.mas_height).multipliedBy(ratio); @@ -882,6 +900,7 @@ - (IBAction)large:(id)sender { + self.videoCallOutView.hidden = YES; if (_landscape == YES) { [self largeBack:self.largeBackButton]; return; @@ -890,22 +909,29 @@ if (self.isVideoDoorLock) { self.navigationController.navigationBarHidden = YES; self.localRecrodContraint.constant = 50; - self.toolBar.hidden = NO; - self.largeTitleLabel.hidden = NO; + self.toolBar.hidden = YES; + self.largeTitleLabel.hidden = YES; self.largeBackButton.hidden = YES; self.bottomView.hidden = YES; - self.videoCallOutView.hidden = YES; + self.scrollView.backgroundColor = [UIColor blackColor]; [self.scrollView setTranslatesAutoresizingMaskIntoConstraints:NO]; - [self.toolBar setTranslatesAutoresizingMaskIntoConstraints:NO]; - [NSLayoutConstraint deactivateConstraints:@[self.scrollViewTopMargin, self.scrollViewWHRatio]]; + [self.playerView setTranslatesAutoresizingMaskIntoConstraints:NO]; + [NSLayoutConstraint deactivateConstraints:@[self.scrollViewTopMargin, self.scrollViewWHRatio, self.playerViewWHRatio, self.playerViewBottomMargin]]; self.scrollViewTopMargin = [NSLayoutConstraint constraintWithItem:self.scrollView attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:self.topLayoutGuide attribute:NSLayoutAttributeBottom multiplier:1.0 constant:-HDLEZ_APP_STATUS_BAR_HEIGHT]; - self.scrollViewWHRatio = [NSLayoutConstraint constraintWithItem:self.scrollView attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:self.scrollView attribute:NSLayoutAttributeHeight multiplier:HDLEZ_APP_SCREEN_WIDTH/(HDLEZ_APP_SCREEN_HEIGHT - 37.) constant:0]; - [NSLayoutConstraint activateConstraints:@[self.scrollViewTopMargin, self.scrollViewWHRatio]]; + self.scrollViewWHRatio = [NSLayoutConstraint constraintWithItem:self.scrollView attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:self.scrollView attribute:NSLayoutAttributeHeight multiplier:HDLEZ_APP_SCREEN_WIDTH/HDLEZ_APP_SCREEN_HEIGHT constant:0]; + + self.playerViewWHRatio = [NSLayoutConstraint constraintWithItem:self.playerView attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:self.playerView attribute:NSLayoutAttributeHeight multiplier:self.doorPlayerAspectRatio constant:0]; + CGFloat playerBottomMargin = HDLEZ_APP_SCREEN_HEIGHT - (HDLEZ_APP_SCREEN_WIDTH / self.doorPlayerAspectRatio); + NSLog(@"########鎾斁闂撮殭锛�%lf", playerBottomMargin); + self.playerViewBottomMargin = [NSLayoutConstraint constraintWithItem:self.scrollView attribute:NSLayoutAttributeBottom relatedBy:NSLayoutRelationEqual toItem:self.playerView attribute:NSLayoutAttributeBottom multiplier:1.0 constant:playerBottomMargin]; + [NSLayoutConstraint activateConstraints:@[self.scrollViewTopMargin, self.scrollViewWHRatio, self.playerViewWHRatio, self.playerViewBottomMargin]]; dispatch_async(dispatch_get_main_queue(), ^{ [self.scrollView layoutIfNeeded]; - [self.toolBar layoutIfNeeded]; + [self.playerView layoutIfNeeded]; }); + self.fullSceneToolView.hidden = NO; + [self.view bringSubviewToFront:self.fullSceneToolView]; return; } if (@available(iOS 16.0, *)) { @@ -942,17 +968,22 @@ self.largeTitleLabel.hidden = YES; self.localRecrodContraint.constant = 10; self.videoCallOutView.hidden = !self.isShowAlert; + self.scrollView.backgroundColor = [UIColor clearColor]; [self.scrollView setTranslatesAutoresizingMaskIntoConstraints:NO]; - [self.toolBar setTranslatesAutoresizingMaskIntoConstraints:NO]; - [NSLayoutConstraint deactivateConstraints:@[self.scrollViewTopMargin,self.scrollViewWHRatio]]; + [self.playerView setTranslatesAutoresizingMaskIntoConstraints:NO]; + [NSLayoutConstraint deactivateConstraints:@[self.scrollViewTopMargin,self.scrollViewWHRatio, self.playerViewWHRatio, self.playerViewBottomMargin]]; self.scrollViewTopMargin = [NSLayoutConstraint constraintWithItem:self.scrollView attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:self.topLayoutGuide attribute:NSLayoutAttributeBottom multiplier:1.0 constant:0]; self.scrollViewWHRatio = [NSLayoutConstraint constraintWithItem:self.scrollView attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:self.scrollView attribute:NSLayoutAttributeHeight multiplier:16/9. constant:0]; - [NSLayoutConstraint activateConstraints:@[self.scrollViewTopMargin,self.scrollViewWHRatio]]; + + self.playerViewWHRatio = [NSLayoutConstraint constraintWithItem:self.playerView attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:self.playerView attribute:NSLayoutAttributeHeight multiplier:16/9. constant:0]; + self.playerViewBottomMargin = [NSLayoutConstraint constraintWithItem:self.scrollView attribute:NSLayoutAttributeBottom relatedBy:NSLayoutRelationEqual toItem:self.playerView attribute:NSLayoutAttributeBottom multiplier:1.0 constant:0]; + [NSLayoutConstraint activateConstraints:@[self.scrollViewTopMargin,self.scrollViewWHRatio, self.playerViewWHRatio, self.playerViewBottomMargin]]; dispatch_async(dispatch_get_main_queue(), ^{ [self.scrollView layoutIfNeeded]; - [self.toolBar layoutIfNeeded]; + [self.playerView layoutIfNeeded]; }); + self.fullSceneToolView.hidden = YES; return; } if (@available(iOS 16.0, *)) { @@ -1041,6 +1072,7 @@ [self.voiceButton setImage:[UIImage imageNamed:@"preview_voice_btn"] forState:UIControlStateNormal]; } _isOpenSound = !_isOpenSound; + [self.fullSceneToolView soundOn:_isOpenSound]; } - (IBAction)playButtonClicked:(id)sender @@ -1069,6 +1101,11 @@ [self.loadingView startSquareClcokwiseAnimation]; } _isPlaying = !_isPlaying; + [self.fullSceneToolView playStatus:_isPlaying]; +} + +- (SEL)extracted { + return @selector(hideQualityView); } - (IBAction)qualityButtonClicked:(id)sender @@ -1081,7 +1118,7 @@ { self.qualityView.hidden = NO; //鍋滅暀5s浠ュ悗闅愯棌瑙嗛璐ㄩ噺View. - [self performSelector:@selector(hideQualityView) withObject:nil afterDelay:5.0f]; + [self performSelector:[self extracted] withObject:nil afterDelay:5.0f]; } self.qualityButton.selected = !self.qualityButton.selected; } @@ -1134,14 +1171,17 @@ if (sender == weakSelf.highButton) { [weakSelf.qualityButton setTitle:NSLocalizedString(@"device_quality_high", @"楂樻竻") forState:UIControlStateNormal]; + [self.fullSceneToolView videoLevel:2]; } else if (sender == weakSelf.middleButton) { [weakSelf.qualityButton setTitle:NSLocalizedString(@"device_quality_median", @"鍧囪 ") forState:UIControlStateNormal]; + [self.fullSceneToolView videoLevel:1]; } else { [weakSelf.qualityButton setTitle:NSLocalizedString(@"device_quality_low", @"娴佺晠") forState:UIControlStateNormal]; + [self.fullSceneToolView videoLevel:0]; } if (result) { @@ -1642,6 +1682,52 @@ } } +#pragma mark - PrivateMethod (闂ㄩ攣鍏ㄥ睆鏃剁殑涓�绯诲垪鎿嶄綔) +- (void)doorLockFullSceneOperation:(HDLEZVideoFullSceneOperation)operation { + switch (operation) { + case HDLEZVideoFullSceneOperationOfHangUp: { // 鎸傛柇 + [self hiddenCallOutAlertView]; + } + break; + case HDLEZVideoFullSceneOperationOfPlay: { // 鎾斁 + [self playButtonClicked:self.playButton]; + } + break; + case HDLEZVideoFullSceneOperationOfPause: { // 鏆傚仠 + [self playButtonClicked:self.playButton]; + } + break; + case HDLEZVideoFullSceneOperationOfSound: { // 寮�鍚煶閲� + [_player openSound]; + NSLog(@"#######寮�鍚煶閲�"); + } + break; + case HDLEZVideoFullSceneOperationOfSoundOff: { // 闈欓煶 + [_player closeSound]; + NSLog(@"#######闈欓煶"); + } + break; + case HDLEZVideoFullSceneOperationOfSmooth: { // 娴佺晠 + [self qualitySelectedClicked:self.lowButton]; + } + break; + case HDLEZVideoFullSceneOperationOfBalance: { // 鍧囪 + [self qualitySelectedClicked:self.middleButton]; + } + break; + case HDLEZVideoFullSceneOperationOfHDFull: { // 楂樻竻 + [self qualitySelectedClicked:self.highButton]; + } + break; + case HDLEZVideoFullSceneOperationOfExitFull: { // 閫�鍑哄叏灞� + [self largeBack:self.largeButton]; + } + break; + default: + break; + } +} + #pragma Setter - (void)setIsShowAlert:(BOOL)isShowAlert { _isShowAlert = isShowAlert; @@ -1654,6 +1740,15 @@ } } +#pragma mark - Getter +- (HDLEZVideoDoorToolView *)fullSceneToolView { + if (!_fullSceneToolView) { + _fullSceneToolView = [[HDLEZVideoDoorToolView alloc] initWithFrame:CGRectMake(0, HDLEZ_APP_SCREEN_HEIGHT - 280, HDLEZ_APP_SCREEN_WIDTH, 280)]; + _fullSceneToolView.hidden = YES; + } + return _fullSceneToolView; +} + - (BOOL)prefersHomeIndicatorAutoHidden { return YES; } diff --git a/EZSDK/EZSDK/EZ/UIViewControllers/EZSettingViewController.m b/EZSDK/EZSDK/EZ/UIViewControllers/EZSettingViewController.m index ad334b8..eb184f6 100644 --- a/EZSDK/EZSDK/EZ/UIViewControllers/EZSettingViewController.m +++ b/EZSDK/EZSDK/EZ/UIViewControllers/EZSettingViewController.m @@ -343,7 +343,12 @@ }]; __weak __typeof(self)weakSelf = self; UIAlertAction *sure=[UIAlertAction actionWithTitle:HDLEZLocallizedString(@"device_temp_sure") style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) { - [UIView dd_showMessage:@"鍔熻兘寮�鍙戜腑..."]; + [EZOPENSDK formatStorage:self.deviceInfo.deviceSerial + storageIndex:0 + completion:^(NSError *error) { + NSLog(@"format command error = %@", error); + [UIView dd_showMessage:error.description]; + }]; }]; [alert addAction:cancle]; [alert addAction:sure]; -- Gitblit v1.8.0