From 83de5ad48e86873b698c904f8954576e8b31dfb5 Mon Sep 17 00:00:00 2001 From: Davin <591807572@qq.com> Date: 星期二, 20 六月 2023 11:35:36 +0800 Subject: [PATCH] feature 门锁全屏 && 设置页面UI --- EZSDK/EZSDK/EZ/UIViewControllers/EZDeviceTableViewController.m | 3 EZSDK/EZSDK/EZ/UIViewControllers/EZSettingViewController.m | 157 ++++++++++++++++----- EZSDK/EZSDK/EZ/UIViewControllers/EZLivePlayViewController.m | 96 +++++++++++++ EZDemo/HDLEZDemo/HDLEZDemo/libEZSDK.a | 0 EZDemo/HDLEZDemo/HDLEZDemo/EZMain.storyboard | 116 ++++++++++++++++ EZDemo/HDLEZDemo/HDLEZDemo/resources/zh-Hans.lproj/Localizable.strings | 7 + EZDemo/HDLEZDemo/HDLEZDemo/resources/en.lproj/Localizable.strings | 7 + EZSDK/EZSDK/EZSDK.m | 1 EZDemo/HDLEZDemo/HDLEZDemo/AppDelegate.m | 8 EZDemo/HDLEZDemo/HDLEZDemo/ViewController.m | 2 EZSDK/EZSDK/EZ/UIViewControllers/EZLivePlayViewController.h | 2 11 files changed, 353 insertions(+), 46 deletions(-) diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/AppDelegate.m b/EZDemo/HDLEZDemo/HDLEZDemo/AppDelegate.m index 286b072..55783a5 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.eyJqdGkiOiI1NTc3YTY5ZDYxMTM0YzgxYjFiMzQ3NjczYjAzYTI3MSIsImNvbXBhbnlJZCI6IjAiLCJyb2xlIjoiIiwiaGVhZGVyUHJlZml4IjoiQmVhcmVyICIsInVzZXJBY2NvdW50Ijoid3hyIiwidGVuYW50SWQiOiIyMCIsInVzZXJUeXBlIjoiVVNFUl9DIiwidG9rZW5UeXBlIjoiYWNjZXNzX3Rva2VuIiwidXNlck5hbWUiOiJ3eHIiLCJ1c2VyRGF0YVJpZ2h0IjoiMSIsIm9wZW5BcHBsaWNhdGlvbklkIjoiMCIsInVzZXJJZCI6IjEzOTIwMzU1NjgyMDQ0MjMxNjkiLCJleHAiOjE2ODE3MzEwOTMsIm5iZiI6MTY4MTcyMzg5M30.E-h5ba1N1vJZjrNgvBAx0XLg13oTxITqjMVuzxeXdgoxYRzhmYUlGATIz_B3OK71Bv91pVq-q2Z6LlA8-40pUNDGN_YGLBSt4p34KliTGisr106ksoFd5B2f3qJt3bgfDHANJCp8tfFcUBGSdX0I9TSworLkQYS0K4Asd_t-ObA" refreshToken:@"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJqdGkiOiJmNDZlOTYzMDQ1ODU0MzI4YTUwOWE2ZDljYmE2YjU1NCIsImNvbXBhbnlJZCI6IjAiLCJoZWFkZXJQcmVmaXgiOiJCZWFyZXIgIiwidGVuYW50SWQiOiIyMCIsInRva2VuVHlwZSI6InJlZnJlc2hfdG9rZW4iLCJvcGVuQXBwbGljYXRpb25JZCI6IjAiLCJ1c2VySWQiOiIxMzkyMDM1NTY4MjA0NDIzMTY5IiwiZXhwIjoxNjgyMzI4NjkzLCJuYmYiOjE2ODE3MjM4OTN9.iQu24WYLPqr3g7LUklZFS7JlY5eO_smPDgUwM3z9s2ldK528nw1EMp0SQgy5USpKpgFzATliDLpb_UDXhx-8-uUjO9dtL8dY3P-I9xmpwjnF13I8eYg5h40hZa5ihuokURsOf9DnD7cjLEItQ_FCsT8rdu9vFzQSE-TWoTmkSV8"]; - [[EZSDK sharedInstance] setRequestHttpsHostAndPlatform:@"https://test-gz.hdlcontrol.com" platform:1 homeId:@"1547099040465408002"]; -// [[EZSDK sharedInstance] setRequestHttpsHostAndPlatform:@"https://test-gz.hdlcontrol.com" platform:1 homeId:@"1644171733588557825"]; - [[EZSDK sharedInstance] setEZAccessToken:@"ra.be9kj2gsdeldsty13rdsieay3wigmdxn-9dccz2nop6-11v2z1o-jslwzcqgz"]; + [[EZSDK sharedInstance] setHDlAccessToken:@"Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJqdGkiOiIyM2UwOTM3YjliNGU0YzU4YWUxMzRiODdlNzkxY2M0NSIsImNvbXBhbnlJZCI6IjAiLCJyb2xlIjoiIiwiaGVhZGVyUHJlZml4IjoiQmVhcmVyICIsInRlbmFudElkIjoiMjAiLCJ1c2VyVHlwZSI6IlVTRVJfQyIsInRva2VuVHlwZSI6ImFjY2Vzc190b2tlbiIsInVzZXJOYW1lIjoiS2FlZGUiLCJ1c2VyRGF0YVJpZ2h0IjoiMSIsIm9wZW5BcHBsaWNhdGlvbklkIjoiMCIsInVzZXJJZCI6IjEzNTAyODA5OTU5OTg4NjMzNjEiLCJleHAiOjE2ODcxNzY4NDgsIm5iZiI6MTY4NzE2OTY0OH0.XqlQEtiyKvoVSo3HmDOW9LSRhdJI7KOGWEOLDCerb0Nod_rDnjPYvYuPct-vPGYhXklEqqcPz0vILHimmS3VpJj04O_5q_Rgsjnpp11rUJ2CxoqZmXAdpfis5HHeIj3n_UVg1exCjsyK-DOdEijIgaToGrLuHM5uvgfD_nvvNDI" refreshToken:@"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJqdGkiOiI2MWI3Y2Y4YmFlMjY0NzMyYjc5YjFiYWUzMzE3NzYxMSIsImNvbXBhbnlJZCI6IjAiLCJoZWFkZXJQcmVmaXgiOiJCZWFyZXIgIiwidGVuYW50SWQiOiIyMCIsInRva2VuVHlwZSI6InJlZnJlc2hfdG9rZW4iLCJvcGVuQXBwbGljYXRpb25JZCI6IjAiLCJ1c2VySWQiOiIxMzUwMjgwOTk1OTk4ODYzMzYxIiwiZXhwIjoxNjg3Nzc0NDQ4LCJuYmYiOjE2ODcxNjk2NDh9.eUcIwEGgpX3xSLvLfSlyANsTNpi0IHGkspF2O3igyRIDUWcQcs8fPouLBzXf29y87_A9AuCURI6ZAj5OPnC9xafQkgnV9_KTBAG62kGTRbAGiOBiAtyJmD6HQ4zUuI8sNmzoI67ewhu2gCQPFPoHOlJ8duODpbSk3NkUrYvxL2k"]; +// [[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.3hkirwcadrpfmaa89wep99io3wto4yds-7zptb10d20-1wxg4f3-ygiojudee"]; diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/EZMain.storyboard b/EZDemo/HDLEZDemo/HDLEZDemo/EZMain.storyboard index d163528..eb97911 100644 --- a/EZDemo/HDLEZDemo/HDLEZDemo/EZMain.storyboard +++ b/EZDemo/HDLEZDemo/HDLEZDemo/EZMain.storyboard @@ -1289,6 +1289,98 @@ <color key="textColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> <nil key="highlightedColor"/> </label> + <view hidden="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="sMv-Yh-W5N"> + <rect key="frame" x="0.0" y="312" width="375" height="355"/> + <subviews> + <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="---" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="8Fe-E7-C5g"> + <rect key="frame" x="32" y="89" width="311" height="21"/> + <fontDescription key="fontDescription" type="system" pointSize="17"/> + <color key="textColor" red="0.090196078430000007" green="0.094117647060000004" blue="0.29411764709999999" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> + <nil key="highlightedColor"/> + </label> + <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="aq5-rn-Dgo"> + <rect key="frame" x="142.5" y="160" width="84.5" height="35"/> + <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> + <state key="normal" title="Button"/> + <buttonConfiguration key="configuration" style="plain" title="蹇界暐"/> + <userDefinedRuntimeAttributes> + <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius"> + <integer key="value" value="8"/> + </userDefinedRuntimeAttribute> + <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/> + <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth"> + <real key="value" value="0.5"/> + </userDefinedRuntimeAttribute> + <userDefinedRuntimeAttribute type="color" keyPath="layer. borderColorWithUIColor"> + <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> + </userDefinedRuntimeAttribute> + </userDefinedRuntimeAttributes> + <connections> + <action selector="clickCalloutIgnoreAction:" destination="uBF-Yq-Qo0" eventType="touchUpInside" id="fTQ-p0-9jk"/> + </connections> + </button> + <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="2bC-B5-gMZ"> + <rect key="frame" x="259" y="160" width="84" height="35"/> + <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> + <state key="normal" title="Button"/> + <buttonConfiguration key="configuration" style="plain" title="鎺ュ惉"/> + <userDefinedRuntimeAttributes> + <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius"> + <integer key="value" value="8"/> + </userDefinedRuntimeAttribute> + <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/> + <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth"> + <real key="value" value="0.5"/> + </userDefinedRuntimeAttribute> + <userDefinedRuntimeAttribute type="color" keyPath="layer. borderColorWithUIColor"> + <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> + </userDefinedRuntimeAttribute> + </userDefinedRuntimeAttributes> + <connections> + <action selector="clickCalloutAnswerAction:" destination="uBF-Yq-Qo0" eventType="touchUpInside" id="2tR-65-1sv"/> + </connections> + </button> + <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="jPI-nC-uAq"> + <rect key="frame" x="32" y="160" width="78.5" height="35"/> + <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> + <state key="normal" title="Button"/> + <buttonConfiguration key="configuration" style="plain" title="鎸傛柇"/> + <userDefinedRuntimeAttributes> + <userDefinedRuntimeAttribute type="number" keyPath="layer.cornerRadius"> + <integer key="value" value="8"/> + </userDefinedRuntimeAttribute> + <userDefinedRuntimeAttribute type="boolean" keyPath="layer.masksToBounds" value="YES"/> + <userDefinedRuntimeAttribute type="number" keyPath="layer.borderWidth"> + <real key="value" value="0.5"/> + </userDefinedRuntimeAttribute> + <userDefinedRuntimeAttribute type="color" keyPath="layer. borderColorWithUIColor"> + <color key="value" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> + </userDefinedRuntimeAttribute> + </userDefinedRuntimeAttributes> + <connections> + <action selector="clickCalloutHangupAction:" destination="uBF-Yq-Qo0" eventType="touchUpInside" id="Szo-xH-Mh6"/> + </connections> + </button> + </subviews> + <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> + <constraints> + <constraint firstItem="aq5-rn-Dgo" firstAttribute="centerY" secondItem="jPI-nC-uAq" secondAttribute="centerY" id="0YK-rV-xIW"/> + <constraint firstAttribute="trailing" secondItem="8Fe-E7-C5g" secondAttribute="trailing" constant="32" id="8NR-Fc-tPc"/> + <constraint firstItem="aq5-rn-Dgo" firstAttribute="leading" secondItem="jPI-nC-uAq" secondAttribute="trailing" constant="32" id="8ht-5u-0y7"/> + <constraint firstItem="2bC-B5-gMZ" firstAttribute="height" secondItem="aq5-rn-Dgo" secondAttribute="height" id="B0O-2O-7OG"/> + <constraint firstAttribute="height" secondItem="aq5-rn-Dgo" secondAttribute="height" multiplier="10.1429" id="BR6-y6-ljY"/> + <constraint firstItem="jPI-nC-uAq" firstAttribute="centerY" secondItem="sMv-Yh-W5N" secondAttribute="centerY" id="Fa3-MI-9zW"/> + <constraint firstItem="aq5-rn-Dgo" firstAttribute="width" secondItem="jPI-nC-uAq" secondAttribute="width" multiplier="1.07143" id="Jzm-Kq-s1B"/> + <constraint firstItem="aq5-rn-Dgo" firstAttribute="top" secondItem="8Fe-E7-C5g" secondAttribute="bottom" constant="50" id="aM7-YH-wta"/> + <constraint firstItem="aq5-rn-Dgo" firstAttribute="height" secondItem="jPI-nC-uAq" secondAttribute="height" id="dri-gY-bvB"/> + <constraint firstItem="jPI-nC-uAq" firstAttribute="leading" secondItem="sMv-Yh-W5N" secondAttribute="leading" constant="32" id="eUw-x2-5HY"/> + <constraint firstItem="2bC-B5-gMZ" firstAttribute="leading" secondItem="aq5-rn-Dgo" secondAttribute="trailing" constant="32" id="eu1-g4-zxI"/> + <constraint firstAttribute="trailing" secondItem="2bC-B5-gMZ" secondAttribute="trailing" constant="32" id="fzR-kq-9dw"/> + <constraint firstItem="2bC-B5-gMZ" firstAttribute="centerY" secondItem="aq5-rn-Dgo" secondAttribute="centerY" id="jQf-ae-vvC"/> + <constraint firstItem="8Fe-E7-C5g" firstAttribute="leading" secondItem="sMv-Yh-W5N" secondAttribute="leading" constant="32" id="p4O-md-aUe"/> + <constraint firstItem="2bC-B5-gMZ" firstAttribute="width" secondItem="aq5-rn-Dgo" secondAttribute="width" id="w2D-Ia-3nQ"/> + </constraints> + </view> </subviews> <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> <constraints> @@ -1297,6 +1389,7 @@ <constraint firstItem="YwB-6z-DKL" firstAttribute="leading" secondItem="PYB-vu-Xcw" secondAttribute="leading" id="135-mO-STg"/> <constraint firstItem="7Gq-77-ypg" firstAttribute="top" secondItem="NRj-hs-uOI" secondAttribute="bottom" priority="751" constant="37" id="4Dh-L5-Wxp"/> <constraint firstItem="YwB-6z-DKL" firstAttribute="centerX" secondItem="PYB-vu-Xcw" secondAttribute="centerX" id="58C-Bi-adb"/> + <constraint firstItem="3qm-Zv-a7S" firstAttribute="top" secondItem="sMv-Yh-W5N" secondAttribute="bottom" id="5fc-VK-Tfj"/> <constraint firstItem="dTs-1h-o4p" firstAttribute="centerX" secondItem="PYB-vu-Xcw" secondAttribute="centerX" id="7Nq-GR-ypc"/> <constraint firstItem="NRj-hs-uOI" firstAttribute="trailing" secondItem="1FE-Su-4U4" secondAttribute="trailing" id="9po-jh-PJt"/> <constraint firstAttribute="trailing" secondItem="NRj-hs-uOI" secondAttribute="trailing" id="G3Q-MC-BpN"/> @@ -1306,6 +1399,7 @@ <constraint firstItem="1FE-Su-4U4" firstAttribute="top" secondItem="dTs-1h-o4p" secondAttribute="bottom" id="Qae-km-Xxm"/> <constraint firstItem="NRj-hs-uOI" firstAttribute="centerY" secondItem="yYv-tJ-QCV" secondAttribute="centerY" id="TGA-a5-AUm"/> <constraint firstItem="nkn-oC-NfP" firstAttribute="top" secondItem="heE-pR-PSR" secondAttribute="bottom" id="Tn0-Se-wHE"/> + <constraint firstItem="sMv-Yh-W5N" firstAttribute="top" secondItem="7Gq-77-ypg" secondAttribute="top" id="TvP-3j-NV3"/> <constraint firstItem="nkn-oC-NfP" firstAttribute="leading" secondItem="PYB-vu-Xcw" secondAttribute="leading" id="YSp-TA-bZd"/> <constraint firstItem="yYv-tJ-QCV" firstAttribute="centerX" secondItem="YwB-6z-DKL" secondAttribute="centerX" id="Yt6-5R-nAw"/> <constraint firstItem="1FE-Su-4U4" firstAttribute="top" secondItem="NRj-hs-uOI" secondAttribute="bottom" id="aO9-KQ-MPh"/> @@ -1314,6 +1408,7 @@ <constraint firstItem="3qm-Zv-a7S" firstAttribute="top" secondItem="gFl-PI-CLn" secondAttribute="bottom" id="fSZ-Xw-PGz"/> <constraint firstItem="gFl-PI-CLn" firstAttribute="leading" secondItem="PYB-vu-Xcw" secondAttribute="leading" id="hvI-bX-2fD"/> <constraint firstItem="3XK-Ur-ZIj" firstAttribute="leading" secondItem="PYB-vu-Xcw" secondAttribute="leading" constant="16" id="hya-DL-nrl"/> + <constraint firstItem="sMv-Yh-W5N" firstAttribute="trailing" secondItem="PYB-vu-Xcw" secondAttribute="trailing" id="jzU-g2-HL3"/> <constraint firstItem="1FE-Su-4U4" firstAttribute="leading" secondItem="PYB-vu-Xcw" secondAttribute="leading" id="mfp-Y3-aJF"/> <constraint firstItem="7Gq-77-ypg" firstAttribute="leading" secondItem="PYB-vu-Xcw" secondAttribute="leading" id="nIY-1B-8KJ"/> <constraint firstItem="NRj-hs-uOI" firstAttribute="leading" secondItem="PYB-vu-Xcw" secondAttribute="leading" id="opo-g8-z05"/> @@ -1323,18 +1418,23 @@ <constraint firstAttribute="trailing" secondItem="gFl-PI-CLn" secondAttribute="trailing" id="vZX-0k-C1e"/> <constraint firstItem="3XK-Ur-ZIj" firstAttribute="top" secondItem="2bL-GF-xWw" secondAttribute="bottom" constant="55" id="vyg-ls-OTR"/> <constraint firstItem="Yrc-c9-rvb" firstAttribute="centerX" secondItem="PYB-vu-Xcw" secondAttribute="centerX" id="y5l-xh-jsd"/> + <constraint firstItem="sMv-Yh-W5N" firstAttribute="leading" secondItem="PYB-vu-Xcw" secondAttribute="leading" id="yPz-fc-ra1"/> </constraints> </view> <navigationItem key="navigationItem" id="vpB-aG-zb3"/> <connections> + <outlet property="answerButton" destination="2bC-B5-gMZ" id="T42-Dl-1mx"/> <outlet property="bottomView" destination="7Gq-77-ypg" id="kLP-FN-Tvv"/> + <outlet property="callOutAlertLabel" destination="8Fe-E7-C5g" id="h1w-BY-5fi"/> <outlet property="captureButton" destination="wEO-O3-gSJ" id="ABn-Ub-QEs"/> <outlet property="cloudBtn" destination="WYB-ca-Ox6" id="E4S-1L-4uS"/> <outlet property="cloudTip" destination="wXb-RI-dLd" id="bCu-fP-8IF"/> <outlet property="controlButton" destination="fUI-tR-jyG" id="uqI-1T-h8V"/> <outlet property="currentHDStatus" destination="oNR-gT-NPm" id="STe-rh-VhG"/> <outlet property="emptyButton" destination="MqM-GF-jSr" id="jD7-hz-yfd"/> + <outlet property="hangUpButton" destination="jPI-nC-uAq" id="WAF-xK-pJI"/> <outlet property="highButton" destination="skK-Ar-y6h" id="jbk-j5-fCX"/> + <outlet property="ignoreButton" destination="aq5-rn-Dgo" id="0J6-cC-KP5"/> <outlet property="largeBackButton" destination="nkn-oC-NfP" id="kwo-DU-hgk"/> <outlet property="largeButton" destination="lTh-qe-8pV" id="feK-gX-fjt"/> <outlet property="largeTitleLabel" destination="2bL-GF-xWw" id="mev-Ko-lDT"/> @@ -1358,6 +1458,7 @@ <outlet property="qualityButton" destination="JEB-Q6-XNh" id="z41-pC-jcF"/> <outlet property="qualityView" destination="dTs-1h-o4p" id="cwe-H0-P0z"/> <outlet property="scrollView" destination="NRj-hs-uOI" id="eoY-a5-7Nt"/> + <outlet property="scrollViewTopMargin" destination="PXn-FW-8dk" id="ROR-nh-sCL"/> <outlet property="scrollViewWHRatio" destination="FHe-T4-BRJ" id="VDa-Ms-cmg"/> <outlet property="speakImageView" destination="SdD-om-sXP" id="vut-X7-g34"/> <outlet property="streamPlayBtn" destination="X2B-Km-Emd" id="wjk-zR-FDC"/> @@ -1367,6 +1468,7 @@ <outlet property="talkView" destination="IqL-eW-ddl" id="hTy-iu-CUA"/> <outlet property="talkViewContraint" destination="IcU-Zd-4MD" id="vMR-vH-k7J"/> <outlet property="toolBar" destination="1FE-Su-4U4" id="CTH-vb-IfL"/> + <outlet property="videoCallOutView" destination="sMv-Yh-W5N" id="RBZ-2y-YXA"/> <outlet property="voiceButton" destination="tAW-X2-E9K" id="N5O-Qz-qd6"/> <outlet property="zoomSizeLabel" destination="3XK-Ur-ZIj" id="vYD-CM-uoE"/> </connections> @@ -1948,6 +2050,8 @@ <outlet property="hdSwitch" destination="KBU-5V-GwK" id="lf0-8b-Qeq"/> <outlet property="nVersionLabel" destination="bvq-5A-JW8" id="dqy-G7-H05"/> <outlet property="nameLabel" destination="8Y3-zX-Cnw" id="w24-b8-OXa"/> + <outlet property="privacyMaskSwitch" destination="rv3-Sh-Gib" id="Cmw-V7-tnn"/> + <outlet property="rightArrowImg" destination="PR2-qZ-cVt" id="g4z-ld-DK0"/> <outlet property="serialLabel" destination="9VV-np-Xv9" id="Vvo-rR-zdY"/> <outlet property="updateImageView" destination="A8K-Mk-xFS" id="qqg-Hg-1rw"/> <outlet property="videoSwitch" destination="eKv-yq-ycl" id="HD9-JX-sBQ"/> @@ -1977,6 +2081,17 @@ <action selector="HDChanged:" destination="3ZH-14-C2h" eventType="valueChanged" id="fHK-6L-vL6"/> </connections> </switch> + <switch opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" contentHorizontalAlignment="center" contentVerticalAlignment="center" on="YES" id="rv3-Sh-Gib"> + <rect key="frame" x="0.0" y="0.0" width="51" height="31"/> + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> + <connections> + <action selector="privacyMasking:" destination="3ZH-14-C2h" eventType="valueChanged" id="Tj0-Ec-Wey"/> + </connections> + </switch> + <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="hdl_ez_list_next" id="PR2-qZ-cVt"> + <rect key="frame" x="0.0" y="0.0" width="42" height="49"/> + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> + </imageView> <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="璁惧鍚�" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="8Y3-zX-Cnw"> <rect key="frame" x="0.0" y="0.0" width="72" height="21"/> <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> @@ -2486,6 +2601,7 @@ <image name="chuanshujilu--2" width="24" height="24"/> <image name="cloud" width="32" height="32"/> <image name="duijiangji" width="39" height="39"/> + <image name="hdl_ez_list_next" width="8" height="8"/> <image name="icon_download_fill" width="20" height="20"/> <image name="large_back_btn" width="10" height="19"/> <image name="logo" width="210" height="94"/> diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/ViewController.m b/EZDemo/HDLEZDemo/HDLEZDemo/ViewController.m index b882b5e..4a5da22 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 @"1644223814848573441" +#define HDLEZ_DEVICEID @"1670680809556606978" //#define HDLEZ_DEVICESERIAL @"K36229010" #define HDLEZ_DEVICESERIAL @"J92513662" diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/libEZSDK.a b/EZDemo/HDLEZDemo/HDLEZDemo/libEZSDK.a index a65e682..daf69cc 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 0f496ef..d14b423 100644 --- a/EZDemo/HDLEZDemo/HDLEZDemo/resources/en.lproj/Localizable.strings +++ b/EZDemo/HDLEZDemo/HDLEZDemo/resources/en.lproj/Localizable.strings @@ -107,6 +107,10 @@ "device_temp_copied"="Copied"; "device_temp_long_tap_copy"="Long press to copy"; "device_temp_sure_to_delete"="Are you sure to delete the temporary password?"; +"device_callout_alert_message" = "Doorbell on call..."; +"device_callout_hang_up" = "Hang up"; +"device_callout_ignore" = "Ignore"; +"device_callout_answer" = "Answer"; "dmessage_title"="Message"; "message_read"="Mark as Read"; @@ -140,6 +144,9 @@ "setting_secure_code"="Encrypt Video and Picture"; "setting_cloud_storage"="Cloud Storage"; "setting_hardware_decoding" = "Hardware decoding"; +"setting_privacy_masking" = "Privacy masking"; +"setting_sd_card_formatting" = "SD card formatting"; +"setting_formatting_alert_message" = "You are currently formatting an SD card"; "setting_opration_fail"="Operation failed."; "setting_opration_success"="Completed."; "setting_switching"="Switching. Please wait..."; diff --git a/EZDemo/HDLEZDemo/HDLEZDemo/resources/zh-Hans.lproj/Localizable.strings b/EZDemo/HDLEZDemo/HDLEZDemo/resources/zh-Hans.lproj/Localizable.strings index 8272092..8ba980f 100644 --- a/EZDemo/HDLEZDemo/HDLEZDemo/resources/zh-Hans.lproj/Localizable.strings +++ b/EZDemo/HDLEZDemo/HDLEZDemo/resources/zh-Hans.lproj/Localizable.strings @@ -67,6 +67,10 @@ "device_account_pw_empty"="甯愬彿鎴栧瘑鐮佷笉鑳戒负绌�"; "device_lan_preview_title"="灞�鍩熺綉棰勮"; "device_add_device_qr_code"="璁惧浜岀淮鐮�"; +"device_callout_alert_message" = "闂ㄩ搩鍛煎彨涓�..."; +"device_callout_hang_up" = "鎸傛柇"; +"device_callout_ignore" = "蹇界暐"; +"device_callout_answer" = "鎺ュ惉"; "device_open"="寮�闂�"; "device_open_success"="寮�闂ㄦ垚鍔燂紒"; @@ -141,6 +145,9 @@ "setting_secure_code"="瑙嗛鍥剧墖鍔犲瘑"; "setting_cloud_storage"="浜戝瓨鍌�"; "setting_hardware_decoding" = "纭В鐮�"; +"setting_privacy_masking" = "闅愮閬斀"; +"setting_sd_card_formatting" = "SD鍗℃牸寮忓寲"; +"setting_formatting_alert_message" = "鎮ㄥ綋鍓嶆鍦ㄦ牸寮忓寲SD鍗�"; "setting_opration_fail"="鎿嶄綔澶辫触"; "setting_opration_success"="鎿嶄綔鎴愬姛"; "setting_switching"="姝e湪鍒囨崲锛岃绋嶅��..."; diff --git a/EZSDK/EZSDK/EZ/UIViewControllers/EZDeviceTableViewController.m b/EZSDK/EZSDK/EZ/UIViewControllers/EZDeviceTableViewController.m index 609e952..bb4a517 100644 --- a/EZSDK/EZSDK/EZ/UIViewControllers/EZDeviceTableViewController.m +++ b/EZSDK/EZSDK/EZ/UIViewControllers/EZDeviceTableViewController.m @@ -192,6 +192,9 @@ EZDeviceInfo *deviceInfo = sender; if ([[segue destinationViewController] isKindOfClass:[EZLivePlayViewController class]]) { ((EZLivePlayViewController *)[segue destinationViewController]).deviceInfo = deviceInfo; +#warning mock test + NSLog(@"#######璺宠浆鍒拌澶囪鎯呴〉"); + ((EZLivePlayViewController *)[segue destinationViewController]).isShowAlert = YES; } else if ([[segue destinationViewController] isKindOfClass:[EZPlaybackViewController class]]) { ((EZPlaybackViewController *)[segue destinationViewController]).deviceInfo = deviceInfo; } else if ([[segue destinationViewController] isKindOfClass:[EZMessageListViewController class]]) { diff --git a/EZSDK/EZSDK/EZ/UIViewControllers/EZLivePlayViewController.h b/EZSDK/EZSDK/EZ/UIViewControllers/EZLivePlayViewController.h index ec2b1fd..a12b37f 100644 --- a/EZSDK/EZSDK/EZ/UIViewControllers/EZLivePlayViewController.h +++ b/EZSDK/EZSDK/EZ/UIViewControllers/EZLivePlayViewController.h @@ -15,9 +15,11 @@ @property (nonatomic, strong) EZDeviceInfo *deviceInfo; @property (nonatomic, copy) NSString *hubCoDevSerial; @property (nonatomic) NSInteger cameraIndex; +@property (nonatomic, assign) BOOL isShowAlert; // 灞曠ず鍛煎彨寮规 @property (nonatomic, copy) NSString *deviceSerial;//璁惧搴忓垪鍙� @property (nonatomic, copy) NSString *deviceId;//璁惧id +@property (nonatomic, assign) BOOL isVideoDoorLock; // 鏄惁涓鸿棰戦棬閿� - (void)imageSavedToPhotosAlbum:(UIImage *)image diff --git a/EZSDK/EZSDK/EZ/UIViewControllers/EZLivePlayViewController.m b/EZSDK/EZSDK/EZ/UIViewControllers/EZLivePlayViewController.m index c77fe02..d790261 100644 --- a/EZSDK/EZSDK/EZ/UIViewControllers/EZLivePlayViewController.m +++ b/EZSDK/EZSDK/EZ/UIViewControllers/EZLivePlayViewController.m @@ -89,6 +89,7 @@ @property (nonatomic, strong) EZCameraInfo *cameraInfo; @property (weak, nonatomic) IBOutlet UILabel *streamTypeLabel; @property (weak, nonatomic) IBOutlet UIScrollView *scrollView; +@property (weak, nonatomic) IBOutlet NSLayoutConstraint *scrollViewTopMargin; @property (weak, nonatomic) IBOutlet UILabel *zoomSizeLabel; @property (weak, nonatomic) IBOutlet NSLayoutConstraint *scrollViewWHRatio; // 婊氬姩瑙嗗浘瀹介珮姣� @property (nonatomic, strong) HDLEZButton *unlockButton;//寮�閿佹寜閽� @@ -96,6 +97,13 @@ @property (nonatomic, copy) NSString *streamToken; @property (nonatomic, strong) UIView *doorPlayerView;//闂ㄩ攣鎾斁view + +// 鍛煎彨瑙嗗浘鐩稿叧鎺т欢 +@property (weak, nonatomic) IBOutlet UIView *videoCallOutView; // 鍛煎彨寮规 +@property (weak, nonatomic) IBOutlet UILabel *callOutAlertLabel; // 鎻愮ず璇█ +@property (weak, nonatomic) IBOutlet UIButton *hangUpButton; // 鎸傛柇鎸夐挳 +@property (weak, nonatomic) IBOutlet UIButton *ignoreButton; // 蹇界暐鎸夐挳 +@property (weak, nonatomic) IBOutlet UIButton *answerButton; // 鎺ュ惉鎸夐挳 @end @@ -333,6 +341,7 @@ self.captureButton.enabled = NO; self.localRecordButton.enabled = NO; self.streamPlayBtn.hidden = YES; + self.isShowAlert = YES; if (_url) { @@ -464,6 +473,14 @@ // [self.controlButton setImage:[UIImage imageNamed:@"hdl_ez_ic_unlock"] forState:UIControlStateNormal]; // [self.controlButton setTitle:NSLocalizedString(@"device_open", @"寮�闂�") forState:UIControlStateNormal]; } + + self.callOutAlertLabel.text = HDLEZLocallizedString(@"device_callout_alert_message"); + [self.hangUpButton setTitle:HDLEZLocallizedString(@"device_callout_hang_up") forState:UIControlStateNormal]; + [self.ignoreButton setTitle:HDLEZLocallizedString(@"device_callout_ignore") forState:UIControlStateNormal]; + [self.answerButton setTitle:HDLEZLocallizedString(@"device_callout_answer") forState:UIControlStateNormal]; + dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(10 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ + self.isShowAlert = NO; + }); } /*寮�閿� @@ -536,7 +553,7 @@ //} - (UIInterfaceOrientationMask)supportedInterfaceOrientations { if (@available(iOS 16.0, *)) { - if (_landscape) { + if (_landscape && !self.isVideoDoorLock) { //妯睆 return UIInterfaceOrientationMaskLandscape; } else { @@ -551,6 +568,7 @@ - (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration { + if (self.isVideoDoorLock) return; self.navigationController.navigationBarHidden = NO; self.toolBar.hidden = NO; self.largeBackButton.hidden = YES; @@ -863,8 +881,27 @@ [self largeBack:self.largeBackButton]; return; } - NSLog(@"######杩涘叆妯睆锛�"); _landscape = YES; + if (self.isVideoDoorLock) { + self.navigationController.navigationBarHidden = YES; + self.localRecrodContraint.constant = 50; + self.toolBar.hidden = NO; + self.largeTitleLabel.hidden = NO; + self.largeBackButton.hidden = YES; + self.bottomView.hidden = YES; + + [self.scrollView setTranslatesAutoresizingMaskIntoConstraints:NO]; + [self.toolBar setTranslatesAutoresizingMaskIntoConstraints:NO]; + [NSLayoutConstraint deactivateConstraints:@[self.scrollViewTopMargin, self.scrollViewWHRatio]]; + 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]]; + dispatch_async(dispatch_get_main_queue(), ^{ + [self.scrollView layoutIfNeeded]; + [self.toolBar layoutIfNeeded]; + }); + return; + } if (@available(iOS 16.0, *)) { if (self.navigationController) { dispatch_async(dispatch_get_main_queue(), ^{ @@ -892,6 +929,26 @@ { NSLog(@"######鏀跺洖妯睆锛�"); _landscape = NO; + if (self.isVideoDoorLock) { + self.navigationController.navigationBarHidden = NO; + self.toolBar.hidden = NO; + self.largeBackButton.hidden = YES; + self.bottomView.hidden = NO; + self.largeTitleLabel.hidden = YES; + self.localRecrodContraint.constant = 10; + + [self.scrollView setTranslatesAutoresizingMaskIntoConstraints:NO]; + [self.toolBar setTranslatesAutoresizingMaskIntoConstraints:NO]; + [NSLayoutConstraint deactivateConstraints:@[self.scrollViewTopMargin,self.scrollViewWHRatio]]; + 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]]; + dispatch_async(dispatch_get_main_queue(), ^{ + [self.scrollView layoutIfNeeded]; + [self.toolBar layoutIfNeeded]; + }); + return; + } if (@available(iOS 16.0, *)) { if (self.navigationController) { dispatch_async(dispatch_get_main_queue(), ^{ @@ -1292,6 +1349,31 @@ _isPressed = !_isPressed; } +- (IBAction)clickCalloutHangupAction:(id)sender { + [UIView dd_showMessage:@"鎸傛柇寮�鍙戜腑..."]; +} + +- (IBAction)clickCalloutIgnoreAction:(id)sender { + [UIView dd_showMessage:@"蹇界暐寮�鍙戜腑..."]; +} + +- (IBAction)clickCalloutAnswerAction:(id)sender { + [UIView dd_showMessage:@"鎺ュ惉寮�鍙戜腑..."]; +} + + +#pragma mark - Publish Methods +/// 灞曠ず鍛煎彨寮规 +- (void)showCallOutAlertView { + self.videoCallOutView.hidden = NO; +} + +/// 闅愯棌鍛煎彨寮规 +- (void)hiddenCallOutAlertView { + self.videoCallOutView.hidden = YES; + +} + #pragma mark - Private Methods - (void) checkMicPermissionResult:(void(^)(BOOL enable)) retCb @@ -1547,6 +1629,16 @@ } } +#pragma Setter +- (void)setIsShowAlert:(BOOL)isShowAlert { + _isShowAlert = isShowAlert; + if (isShowAlert) { + [self showCallOutAlertView]; + } else { + [self hiddenCallOutAlertView]; + } +} + - (BOOL)prefersHomeIndicatorAutoHidden { return YES; } diff --git a/EZSDK/EZSDK/EZ/UIViewControllers/EZSettingViewController.m b/EZSDK/EZSDK/EZ/UIViewControllers/EZSettingViewController.m index a4071bb..ad334b8 100644 --- a/EZSDK/EZSDK/EZ/UIViewControllers/EZSettingViewController.m +++ b/EZSDK/EZSDK/EZ/UIViewControllers/EZSettingViewController.m @@ -26,6 +26,8 @@ @property (nonatomic, weak) IBOutlet UISwitch *videoSwitch; @property (nonatomic, weak) IBOutlet UISwitch *actionSwitch; @property (weak, nonatomic) IBOutlet UISwitch *hdSwitch; +@property (weak, nonatomic) IBOutlet UISwitch *privacyMaskSwitch; +@property (weak, nonatomic) IBOutlet UIImageView *rightArrowImg; @property (nonatomic, weak) IBOutlet UILabel *nameLabel; @property (nonatomic, weak) IBOutlet UILabel *serialLabel; @property (nonatomic, weak) IBOutlet UILabel *currentVersionLabel; @@ -78,6 +80,8 @@ self.videoSwitch.on = self.deviceInfo.isEncrypt; } [_settingList addObject:@[NSLocalizedString(@"setting_hardware_decoding", @"纭В鐮�")]]; + [_settingList addObject:@[NSLocalizedString(@"setting_privacy_masking", @"闅愮閬斀")]]; + [_settingList addObject:@[NSLocalizedString(@"setting_sd_card_formatting", @"SD鍗℃牸寮忓寲")]]; [_settingList addObject:@[NSLocalizedString(@"delete", @"鍒犻櫎")]]; self.serialLabel.text = self.deviceInfo.deviceSerial; @@ -214,6 +218,27 @@ } else if (indexPath.section == 6) { + [cell.contentView addSubview:self.privacyMaskSwitch]; + [self.privacyMaskSwitch mas_remakeConstraints:^(MASConstraintMaker *make) { + make.trailing.mas_equalTo(@(-17)); + make.centerY.mas_equalTo(cell.contentView.mas_centerY); + make.width.mas_equalTo(@51); + make.height.mas_equalTo(@31); + }]; + self.privacyMaskSwitch.on = !self.privacyMaskSwitch.on; + } + else if (indexPath.section == 7) + { + [cell.contentView addSubview:self.rightArrowImg]; + [self.rightArrowImg mas_remakeConstraints:^(MASConstraintMaker *make) { + make.trailing.mas_equalTo(@(-17)); + make.centerY.mas_equalTo(cell.contentView.mas_centerY); + make.width.mas_equalTo(@20); + make.height.mas_equalTo(@20); + }]; + } + else if (indexPath.section == 8) + { cell.textLabel.textColor = [UIColor redColor]; cell.textLabel.textAlignment = NSTextAlignmentCenter; } @@ -277,10 +302,27 @@ - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { [tableView deselectRowAtIndexPath:indexPath animated:YES]; - if (indexPath.section == 6) + if (indexPath.section == 8) { - UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:nil delegate:self cancelButtonTitle:NSLocalizedString(@"cancel", @"鍙栨秷") destructiveButtonTitle:NSLocalizedString(@"delete",@"鍒犻櫎") otherButtonTitles:nil]; - [actionSheet showInView:self.view]; +// UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:nil delegate:self cancelButtonTitle:NSLocalizedString(@"cancel", @"鍙栨秷") destructiveButtonTitle:NSLocalizedString(@"delete",@"鍒犻櫎") otherButtonTitles:nil]; +// [actionSheet showInView:self.view]; + + __weak __typeof(self)weakSelf = self; + UIAlertController *actionSheet = [UIAlertController alertControllerWithTitle:nil message:nil preferredStyle:UIAlertControllerStyleActionSheet]; + + [actionSheet addAction:[UIAlertAction actionWithTitle:NSLocalizedString(@"cancel", @"鍙栨秷") style:UIAlertActionStyleCancel handler:^(UIAlertAction *action) { + [weakSelf dismissViewControllerAnimated:YES completion:^{ + }]; + }]]; + + [actionSheet addAction:[UIAlertAction actionWithTitle:NSLocalizedString(@"delete",@"鍒犻櫎") style:UIAlertActionStyleDestructive handler:^(UIAlertAction *action) { + [weakSelf deleteCurrentDevice]; + [weakSelf dismissViewControllerAnimated:YES completion:^{ + }]; + }]]; + + [self presentViewController:actionSheet animated:YES completion:nil]; + } // else if (indexPath.section == 5) // { @@ -294,9 +336,18 @@ { [self performSegueWithIdentifier:@"go2Upgrade" sender:nil]; } - else if (indexPath.section == 1) + else if (indexPath.section == 7) { - + UIAlertController *alert=[UIAlertController alertControllerWithTitle:HDLEZLocallizedString(@"alert_title") message:HDLEZLocallizedString(@"setting_formatting_alert_message") preferredStyle:UIAlertControllerStyleAlert]; + UIAlertAction *cancle=[UIAlertAction actionWithTitle:HDLEZLocallizedString(@"device_temp_cancle") style:UIAlertActionStyleCancel handler:^(UIAlertAction * _Nonnull action) { + }]; + __weak __typeof(self)weakSelf = self; + UIAlertAction *sure=[UIAlertAction actionWithTitle:HDLEZLocallizedString(@"device_temp_sure") style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) { + [UIView dd_showMessage:@"鍔熻兘寮�鍙戜腑..."]; + }]; + [alert addAction:cancle]; + [alert addAction:sure]; + [self presentViewController:alert animated:YES completion:nil]; } } @@ -353,17 +404,57 @@ } #pragma mark - UIActionSheetDelegate Methods +- (void)deleteCurrentDevice { + __weak MBProgressHUD *hud = [MBProgressHUD showHUDAddedTo:self.view animated:YES]; + hud.labelText = NSLocalizedString(@"message_deleting", @"姝e湪鍒犻櫎锛岃绋嶅��..."); -- (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex -{ - if(buttonIndex == 0) - { - __weak MBProgressHUD *hud = [MBProgressHUD showHUDAddedTo:self.view animated:YES]; - hud.labelText = NSLocalizedString(@"message_deleting", @"姝e湪鍒犻櫎锛岃绋嶅��..."); -// [EZOPENSDK deleteDevice:self.deviceInfo.deviceSerial completion:^(NSError *error) { -// if(!error) + [EZHttpUtil.sharedManager deleteDeviceByHDL:self.deviceInfo.deviceSerial completion:^(ResponseData *responseData) { + [hud hide:YES]; + if(responseData.success) { + NSArray *viewControllers = self.navigationController.viewControllers; + for (UIViewController *vc in viewControllers) + { + if([vc isKindOfClass:[EZDeviceTableViewController class]]) + { + ((EZDeviceTableViewController *)vc).needRefresh = YES; + [self.navigationController popToViewController:vc animated:YES]; + break; + } + } + } else { + NSString *mes = [NSString stringWithFormat:@"%@(%@)",NSLocalizedString(@"setting_opration_fail", @"鎿嶄綔澶辫触"),responseData.code]; + [self.view makeToast:mes duration:2.0 position:@"center"]; + } + }]; +} + +//- (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex +//{ +// if(buttonIndex == 0) +// { +// __weak MBProgressHUD *hud = [MBProgressHUD showHUDAddedTo:self.view animated:YES]; +// hud.labelText = NSLocalizedString(@"message_deleting", @"姝e湪鍒犻櫎锛岃绋嶅��..."); +//// [EZOPENSDK deleteDevice:self.deviceInfo.deviceSerial completion:^(NSError *error) { +//// if(!error) +//// { +//// [hud hide:YES]; +//// NSArray *viewControllers = self.navigationController.viewControllers; +//// for (UIViewController *vc in viewControllers) +//// { +//// if([vc isKindOfClass:[EZDeviceTableViewController class]]) +//// { +//// ((EZDeviceTableViewController *)vc).needRefresh = YES; +//// [self.navigationController popToViewController:vc animated:YES]; +//// break; +//// } +//// } +//// } +//// }]; +// +// [EZHttpUtil.sharedManager deleteDeviceByHDL:self.deviceInfo.deviceSerial completion:^(ResponseData *responseData) { +// [hud hide:YES]; +// if(responseData.success) // { -// [hud hide:YES]; // NSArray *viewControllers = self.navigationController.viewControllers; // for (UIViewController *vc in viewControllers) // { @@ -374,33 +465,16 @@ // break; // } // } +// }else{ +// NSString *mes = [NSString stringWithFormat:@"%@(%@)",NSLocalizedString(@"setting_opration_fail", @"鎿嶄綔澶辫触"),responseData.code]; +// +// [self.view makeToast:mes duration:2.0 position:@"center"]; // } // }]; - - [EZHttpUtil.sharedManager deleteDeviceByHDL:self.deviceInfo.deviceSerial completion:^(ResponseData *responseData) { - [hud hide:YES]; - if(responseData.success) - { - NSArray *viewControllers = self.navigationController.viewControllers; - for (UIViewController *vc in viewControllers) - { - if([vc isKindOfClass:[EZDeviceTableViewController class]]) - { - ((EZDeviceTableViewController *)vc).needRefresh = YES; - [self.navigationController popToViewController:vc animated:YES]; - break; - } - } - }else{ - NSString *mes = [NSString stringWithFormat:@"%@(%@)",NSLocalizedString(@"setting_opration_fail", @"鎿嶄綔澶辫触"),responseData.code]; - - [self.view makeToast:mes duration:2.0 position:@"center"]; - } - }]; - - - } -} +// +// +// } +//} #pragma mark - UIAlertViewDelegate Methods @@ -465,6 +539,11 @@ [[NSUserDefaults standardUserDefaults] synchronize]; } +- (IBAction)privacyMasking:(id)sender { + UISwitch *pmSwitch = (UISwitch*)sender; + BOOL status = pmSwitch.isOn; +} + - (IBAction)encryptChanged:(id)sender { if(!self.videoSwitch.on) diff --git a/EZSDK/EZSDK/EZSDK.m b/EZSDK/EZSDK/EZSDK.m index ae54994..fa3e998 100644 --- a/EZSDK/EZSDK/EZSDK.m +++ b/EZSDK/EZSDK/EZSDK.m @@ -237,6 +237,7 @@ EZLivePlayViewController *vc = [ezMainStoryBoard instantiateViewControllerWithIdentifier:@"EZLivePlayViewController"]; vc.deviceId=deviceId; vc.deviceSerial=deviceSerial; + vc.isVideoDoorLock = [deviceType isEqualToString:HDLEZ_DOOR_SPK]; [[self getCurrentVC] setNavigationBarHidden:NO]; [[self getCurrentVC].navigationBar setHidden:NO]; [[self getCurrentVC] pushViewController:vc animated:YES]; -- Gitblit v1.8.0