From d82c74ca2e845211c95b314134bf7d0ea80e45f7 Mon Sep 17 00:00:00 2001
From: JLChen <551775569@qq.com>
Date: 星期五, 20 八月 2021 18:03:06 +0800
Subject: [PATCH] 2021-08-20 1.增加IOS SDK相关接口对接

---
 HDL_APP_Project.sln                               |   14 
 HDL_ON/DAL/ThirdPartySdk/HDLLinphone.cs           |  521 +++++++++++++++++----
 HDL_ON/Common/HDLCommon.cs                        |    2 
 HDL-ON_Android/Resources/Resource.designer.cs     |  845 +++++++++++++++++-----------------
 HDL_ON/Common/ApiUtlis.cs                         |    8 
 .vs/HDL_APP_Project/xs/UserPrefs.xml              |   19 
 DLL/Linphone/Android/Shared.Droid.HDLLinphone.dll |    0 
 HDL_ON/DAL/ThirdPartySdk/ESOnVideo.cs             |   10 
 8 files changed, 882 insertions(+), 537 deletions(-)

diff --git a/.vs/HDL_APP_Project/xs/UserPrefs.xml b/.vs/HDL_APP_Project/xs/UserPrefs.xml
index bee7b0d..f24ff57 100644
--- a/.vs/HDL_APP_Project/xs/UserPrefs.xml
+++ b/.vs/HDL_APP_Project/xs/UserPrefs.xml
@@ -1,24 +1,19 @@
-锘�<Properties StartupConfiguration="{09712674-2A38-407B-B1E2-560B2C352F9A}|Default">
-  <MonoDevelop.Ide.ItemProperties.HDL-ON__iOS automaticSigning="False" PreferredExecutionTarget="MonoDevelop.IPhone.IPhoneSimulatorTarget.08FD445C-3EE8-4ED2-BF28-B42ADD0DA92C" />
-  <MonoDevelop.Ide.Workbench ActiveDocument="HDL_ON/DAL/ThirdPartySdk/HDLLinphone.cs">
-    <Files>
-      <File FileName="HDL_ON/Common/HDLCommon.cs" Line="1" Column="1" />
-      <File FileName="HDL_ON/DAL/ThirdPartySdk/HDLLinphone.cs" Line="9" Column="16" />
-    </Files>
+锘�<Properties StartupConfiguration="{D998E133-F0DD-4760-BE3C-461632F54DA4}|Default">
+  <MonoDevelop.Ide.ItemProperties.HDL-ON__iOS automaticSigning="False" PreferredExecutionTarget="MonoDevelop.IPhone.IPhoneDeviceTarget.00008030-00014C392121802E" />
+  <MonoDevelop.Ide.Workbench>
     <Pads>
       <Pad Id="ProjectPad">
         <State name="__root__">
           <Node name="HDL_APP_Project" expanded="True">
             <Node name="HDL_ON" expanded="True">
-              <Node name="Common" expanded="True" />
               <Node name="DAL" expanded="True">
                 <Node name="ThirdPartySdk" expanded="True">
                   <Node name="HDLLinphone.cs" selected="True" />
                 </Node>
               </Node>
             </Node>
-            <Node name="HDL-ON_Android" expanded="True">
-              <Node name="Packages" expanded="True" />
+            <Node name="Shared.IOS.HDLLinphoneSDK" expanded="True">
+              <Node name="Properties" expanded="True" />
             </Node>
           </Node>
         </State>
@@ -32,8 +27,8 @@
     <String>Shared.IOS/Shared.IOS.csproj</String>
     <String>../Linphone/HDLLinphoneSDK_IOS/Shared.IOS.HDLLinphoneSDK/Shared.IOS.HDLLinphoneSDK/Shared.IOS.HDLLinphoneSDK.csproj</String>
   </DisabledProjects>
-  <MonoDevelop.Ide.Workspace ActiveConfiguration="Debug" />
-  <MonoDevelop.Ide.ItemProperties.HDL-ON__Android PreferredExecutionTarget="Android.364c4b3158493098" />
+  <MonoDevelop.Ide.Workspace ActiveConfiguration="Debug|iPhone" />
+  <MonoDevelop.Ide.ItemProperties.HDL-ON__Android PreferredExecutionTarget="Android.Android_Accelerated_Oreo" />
   <MonoDevelop.Ide.DebuggingService.Breakpoints>
     <BreakpointStore />
   </MonoDevelop.Ide.DebuggingService.Breakpoints>
diff --git a/DLL/Linphone/Android/Shared.Droid.HDLLinphone.dll b/DLL/Linphone/Android/Shared.Droid.HDLLinphone.dll
index 1120984..057fced 100644
--- a/DLL/Linphone/Android/Shared.Droid.HDLLinphone.dll
+++ b/DLL/Linphone/Android/Shared.Droid.HDLLinphone.dll
Binary files differ
diff --git a/HDL-ON_Android/Resources/Resource.designer.cs b/HDL-ON_Android/Resources/Resource.designer.cs
index 922ebd3..eda9a07 100644
--- a/HDL-ON_Android/Resources/Resource.designer.cs
+++ b/HDL-ON_Android/Resources/Resource.designer.cs
@@ -11786,1030 +11786,1033 @@
 			public const int lp_callingStr = 2131689823;
 			
 			// aapt resource value: 0x7F0F0160
-			public const int lp_endOfCallStr = 2131689824;
+			public const int lp_endMonitoringStr = 2131689824;
 			
 			// aapt resource value: 0x7F0F0161
-			public const int lp_hangupStr = 2131689825;
+			public const int lp_endOfCallStr = 2131689825;
 			
 			// aapt resource value: 0x7F0F0162
-			public const int lp_okStr = 2131689826;
+			public const int lp_hangupStr = 2131689826;
 			
 			// aapt resource value: 0x7F0F0163
-			public const int lp_operationFailedStr = 2131689827;
+			public const int lp_okStr = 2131689827;
 			
 			// aapt resource value: 0x7F0F0164
-			public const int lp_outdoorUnitStr = 2131689828;
+			public const int lp_operationFailedStr = 2131689828;
 			
 			// aapt resource value: 0x7F0F0165
-			public const int lp_refuseStr = 2131689829;
+			public const int lp_outdoorUnitStr = 2131689829;
 			
 			// aapt resource value: 0x7F0F0166
-			public const int lp_saveToTheAlbumsStr = 2131689830;
+			public const int lp_refuseStr = 2131689830;
 			
 			// aapt resource value: 0x7F0F0167
-			public const int lp_screenshotStr = 2131689831;
+			public const int lp_saveToTheAlbumsStr = 2131689831;
 			
 			// aapt resource value: 0x7F0F0168
-			public const int lp_tipStr = 2131689832;
-			
-			// aapt resource value: 0x7F0F016B
-			public const int lp_unlockfailureStr = 2131689835;
+			public const int lp_screenshotStr = 2131689832;
 			
 			// aapt resource value: 0x7F0F0169
-			public const int lp_unlockStr = 2131689833;
-			
-			// aapt resource value: 0x7F0F016A
-			public const int lp_unlockSuccessfullyStr = 2131689834;
+			public const int lp_tipStr = 2131689833;
 			
 			// aapt resource value: 0x7F0F016C
-			public const int main_tab_second_tab = 2131689836;
+			public const int lp_unlockfailureStr = 2131689836;
+			
+			// aapt resource value: 0x7F0F016A
+			public const int lp_unlockStr = 2131689834;
+			
+			// aapt resource value: 0x7F0F016B
+			public const int lp_unlockSuccessfullyStr = 2131689835;
 			
 			// aapt resource value: 0x7F0F016D
-			public const int message_come_from_tip = 2131689837;
+			public const int main_tab_second_tab = 2131689837;
 			
 			// aapt resource value: 0x7F0F016E
-			public const int message_encrypt_inputpsw_tip_title = 2131689838;
+			public const int message_come_from_tip = 2131689838;
 			
 			// aapt resource value: 0x7F0F016F
-			public const int message_live = 2131689839;
+			public const int message_encrypt_inputpsw_tip_title = 2131689839;
 			
 			// aapt resource value: 0x7F0F0170
-			public const int message_no_data_text = 2131689840;
+			public const int message_live = 2131689840;
 			
 			// aapt resource value: 0x7F0F0171
-			public const int message_refresh_fail_network_exception = 2131689841;
+			public const int message_no_data_text = 2131689841;
 			
 			// aapt resource value: 0x7F0F0172
-			public const int message_refresh_fail_server_exception = 2131689842;
+			public const int message_refresh_fail_network_exception = 2131689842;
 			
 			// aapt resource value: 0x7F0F0173
-			public const int message_video = 2131689843;
+			public const int message_refresh_fail_server_exception = 2131689843;
 			
 			// aapt resource value: 0x7F0F0174
-			public const int modify_online_schedule = 2131689844;
+			public const int message_video = 2131689844;
 			
 			// aapt resource value: 0x7F0F0175
-			public const int month = 2131689845;
+			public const int modify_online_schedule = 2131689845;
 			
 			// aapt resource value: 0x7F0F0176
-			public const int more = 2131689846;
+			public const int month = 2131689846;
 			
 			// aapt resource value: 0x7F0F0177
-			public const int more_local_image = 2131689847;
+			public const int more = 2131689847;
 			
 			// aapt resource value: 0x7F0F0178
-			public const int more_setting = 2131689848;
+			public const int more_local_image = 2131689848;
 			
 			// aapt resource value: 0x7F0F0179
-			public const int my_collect = 2131689849;
+			public const int more_setting = 2131689849;
 			
 			// aapt resource value: 0x7F0F017A
-			public const int my_devices = 2131689850;
+			public const int my_collect = 2131689850;
 			
 			// aapt resource value: 0x7F0F017B
-			public const int network_error_retry_prompt = 2131689851;
+			public const int my_devices = 2131689851;
 			
 			// aapt resource value: 0x7F0F017C
-			public const int network_exception = 2131689852;
+			public const int network_error_retry_prompt = 2131689852;
 			
 			// aapt resource value: 0x7F0F017D
-			public const int network_video_recorder = 2131689853;
+			public const int network_exception = 2131689853;
 			
 			// aapt resource value: 0x7F0F017E
-			public const int newest_version = 2131689854;
+			public const int network_video_recorder = 2131689854;
 			
 			// aapt resource value: 0x7F0F017F
-			public const int next_button_txt = 2131689855;
-			
-			// aapt resource value: 0x7F0F0186
-			public const int not_find_any_devices = 2131689862;
-			
-			// aapt resource value: 0x7F0F0187
-			public const int not_now = 2131689863;
-			
-			// aapt resource value: 0x7F0F0188
-			public const int not_recognized_fingerprint_hint = 2131689864;
+			public const int newest_version = 2131689855;
 			
 			// aapt resource value: 0x7F0F0180
-			public const int no_event_device_prompt = 2131689856;
+			public const int next_button_txt = 2131689856;
 			
-			// aapt resource value: 0x7F0F0181
-			public const int no_leave_device_prompt = 2131689857;
+			// aapt resource value: 0x7F0F0187
+			public const int not_find_any_devices = 2131689863;
 			
-			// aapt resource value: 0x7F0F0182
-			public const int no_more_alarm_tip = 2131689858;
-			
-			// aapt resource value: 0x7F0F0183
-			public const int no_more_leave_tip = 2131689859;
-			
-			// aapt resource value: 0x7F0F0184
-			public const int no_remote_data = 2131689860;
-			
-			// aapt resource value: 0x7F0F0185
-			public const int no_result_text = 2131689861;
+			// aapt resource value: 0x7F0F0188
+			public const int not_now = 2131689864;
 			
 			// aapt resource value: 0x7F0F0189
-			public const int offline_warn_text = 2131689865;
+			public const int not_recognized_fingerprint_hint = 2131689865;
 			
-			// aapt resource value: 0x7F0F018B
-			public const int online_time = 2131689867;
+			// aapt resource value: 0x7F0F0181
+			public const int no_event_device_prompt = 2131689857;
+			
+			// aapt resource value: 0x7F0F0182
+			public const int no_leave_device_prompt = 2131689858;
+			
+			// aapt resource value: 0x7F0F0183
+			public const int no_more_alarm_tip = 2131689859;
+			
+			// aapt resource value: 0x7F0F0184
+			public const int no_more_leave_tip = 2131689860;
+			
+			// aapt resource value: 0x7F0F0185
+			public const int no_remote_data = 2131689861;
+			
+			// aapt resource value: 0x7F0F0186
+			public const int no_result_text = 2131689862;
 			
 			// aapt resource value: 0x7F0F018A
-			public const int on_the_phone = 2131689866;
+			public const int offline_warn_text = 2131689866;
 			
 			// aapt resource value: 0x7F0F018C
-			public const int open_camera_fail = 2131689868;
+			public const int online_time = 2131689868;
+			
+			// aapt resource value: 0x7F0F018B
+			public const int on_the_phone = 2131689867;
 			
 			// aapt resource value: 0x7F0F018D
-			public const int open_camera_lens = 2131689869;
+			public const int open_camera_fail = 2131689869;
 			
 			// aapt resource value: 0x7F0F018E
-			public const int open_source_localization = 2131689870;
+			public const int open_camera_lens = 2131689870;
 			
 			// aapt resource value: 0x7F0F018F
-			public const int open_ys_service = 2131689871;
+			public const int open_source_localization = 2131689871;
 			
 			// aapt resource value: 0x7F0F0190
-			public const int open_ys_service_fail = 2131689872;
+			public const int open_ys_service = 2131689872;
 			
 			// aapt resource value: 0x7F0F0191
-			public const int open_ys_service_success = 2131689873;
+			public const int open_ys_service_fail = 2131689873;
 			
 			// aapt resource value: 0x7F0F0192
-			public const int operational_fail = 2131689874;
+			public const int open_ys_service_success = 2131689874;
 			
 			// aapt resource value: 0x7F0F0193
-			public const int option_support_web = 2131689875;
+			public const int operational_fail = 2131689875;
 			
 			// aapt resource value: 0x7F0F0194
-			public const int password_et_hint = 2131689876;
+			public const int option_support_web = 2131689876;
 			
 			// aapt resource value: 0x7F0F0195
-			public const int password_security_txt = 2131689877;
+			public const int password_et_hint = 2131689877;
 			
 			// aapt resource value: 0x7F0F0196
-			public const int password_toggle_content_description = 2131689878;
+			public const int password_security_txt = 2131689878;
 			
 			// aapt resource value: 0x7F0F0197
-			public const int path_password_eye = 2131689879;
+			public const int password_toggle_content_description = 2131689879;
 			
 			// aapt resource value: 0x7F0F0198
-			public const int path_password_eye_mask_strike_through = 2131689880;
+			public const int path_password_eye = 2131689880;
 			
 			// aapt resource value: 0x7F0F0199
-			public const int path_password_eye_mask_visible = 2131689881;
+			public const int path_password_eye_mask_strike_through = 2131689881;
 			
 			// aapt resource value: 0x7F0F019A
-			public const int path_password_strike_through = 2131689882;
+			public const int path_password_eye_mask_visible = 2131689882;
 			
 			// aapt resource value: 0x7F0F019B
-			public const int pickerview_cancel = 2131689883;
+			public const int path_password_strike_through = 2131689883;
 			
 			// aapt resource value: 0x7F0F019C
-			public const int pickerview_day = 2131689884;
+			public const int pickerview_cancel = 2131689884;
 			
 			// aapt resource value: 0x7F0F019D
-			public const int pickerview_hours = 2131689885;
+			public const int pickerview_day = 2131689885;
 			
 			// aapt resource value: 0x7F0F019E
-			public const int pickerview_minutes = 2131689886;
+			public const int pickerview_hours = 2131689886;
 			
 			// aapt resource value: 0x7F0F019F
-			public const int pickerview_month = 2131689887;
+			public const int pickerview_minutes = 2131689887;
 			
 			// aapt resource value: 0x7F0F01A0
-			public const int pickerview_seconds = 2131689888;
+			public const int pickerview_month = 2131689888;
 			
 			// aapt resource value: 0x7F0F01A1
-			public const int pickerview_submit = 2131689889;
+			public const int pickerview_seconds = 2131689889;
 			
 			// aapt resource value: 0x7F0F01A2
-			public const int pickerview_year = 2131689890;
-			
-			// aapt resource value: 0x7F0F01A4
-			public const int platform_login_button_txt = 2131689892;
+			public const int pickerview_submit = 2131689890;
 			
 			// aapt resource value: 0x7F0F01A3
-			public const int plat_connected = 2131689891;
+			public const int pickerview_year = 2131689891;
 			
 			// aapt resource value: 0x7F0F01A5
-			public const int play_hour = 2131689893;
+			public const int platform_login_button_txt = 2131689893;
+			
+			// aapt resource value: 0x7F0F01A4
+			public const int plat_connected = 2131689892;
 			
 			// aapt resource value: 0x7F0F01A6
-			public const int please_connect_the_power = 2131689894;
-			
-			// aapt resource value: 0x7F0F01A8
-			public const int please_input_phonenumber_txt = 2131689896;
+			public const int play_hour = 2131689894;
 			
 			// aapt resource value: 0x7F0F01A7
-			public const int please_input_phone_txt = 2131689895;
+			public const int please_connect_the_power = 2131689895;
 			
 			// aapt resource value: 0x7F0F01A9
-			public const int please_input_platform_accesstoken_txt = 2131689897;
+			public const int please_input_phonenumber_txt = 2131689897;
+			
+			// aapt resource value: 0x7F0F01A8
+			public const int please_input_phone_txt = 2131689896;
 			
 			// aapt resource value: 0x7F0F01AA
-			public const int please_input_sign_get_sms_txt = 2131689898;
+			public const int please_input_platform_accesstoken_txt = 2131689898;
 			
 			// aapt resource value: 0x7F0F01AB
-			public const int please_input_sign_txt = 2131689899;
+			public const int please_input_sign_get_sms_txt = 2131689899;
 			
 			// aapt resource value: 0x7F0F01AC
-			public const int please_input_userid_txt = 2131689900;
+			public const int please_input_sign_txt = 2131689900;
 			
 			// aapt resource value: 0x7F0F01AD
-			public const int please_open_wifi_network = 2131689901;
+			public const int please_input_userid_txt = 2131689901;
 			
 			// aapt resource value: 0x7F0F01AE
-			public const int please_open_wifi_network_sadp = 2131689902;
+			public const int please_open_wifi_network = 2131689902;
 			
 			// aapt resource value: 0x7F0F01AF
-			public const int please_operate_after_select_any_record = 2131689903;
+			public const int please_open_wifi_network_sadp = 2131689903;
 			
 			// aapt resource value: 0x7F0F01B0
-			public const int please_try_connect_device_hotspot_manually = 2131689904;
+			public const int please_operate_after_select_any_record = 2131689904;
 			
 			// aapt resource value: 0x7F0F01B1
-			public const int plug = 2131689905;
+			public const int please_try_connect_device_hotspot_manually = 2131689905;
 			
 			// aapt resource value: 0x7F0F01B2
-			public const int pm = 2131689906;
+			public const int plug = 2131689906;
 			
 			// aapt resource value: 0x7F0F01B3
-			public const int press_again_to_exit = 2131689907;
+			public const int pm = 2131689907;
 			
 			// aapt resource value: 0x7F0F01B4
-			public const int press_to_talk_release_to_listen = 2131689908;
+			public const int press_again_to_exit = 2131689908;
 			
 			// aapt resource value: 0x7F0F01B5
-			public const int probe_not_support_tip = 2131689909;
+			public const int press_to_talk_release_to_listen = 2131689909;
 			
 			// aapt resource value: 0x7F0F01B6
-			public const int promptUserToActivate = 2131689910;
+			public const int probe_not_support_tip = 2131689910;
 			
 			// aapt resource value: 0x7F0F01B7
-			public const int ptz = 2131689911;
+			public const int promptUserToActivate = 2131689911;
 			
 			// aapt resource value: 0x7F0F01B8
-			public const int ptz_control_timeout_cruise_track_failed = 2131689912;
+			public const int ptz = 2131689912;
 			
 			// aapt resource value: 0x7F0F01B9
-			public const int ptz_control_timeout_sound_lacalization_failed = 2131689913;
+			public const int ptz_control_timeout_cruise_track_failed = 2131689913;
 			
 			// aapt resource value: 0x7F0F01BA
-			public const int ptz_is_preseting = 2131689914;
+			public const int ptz_control_timeout_sound_lacalization_failed = 2131689914;
 			
 			// aapt resource value: 0x7F0F01BB
-			public const int ptz_mirroring_failed = 2131689915;
+			public const int ptz_is_preseting = 2131689915;
 			
 			// aapt resource value: 0x7F0F01BC
-			public const int ptz_operation_failed = 2131689916;
+			public const int ptz_mirroring_failed = 2131689916;
 			
 			// aapt resource value: 0x7F0F01BD
-			public const int ptz_operation_too_frequently = 2131689917;
+			public const int ptz_operation_failed = 2131689917;
 			
 			// aapt resource value: 0x7F0F01BE
-			public const int ptz_preset_current_position_failed = 2131689918;
+			public const int ptz_operation_too_frequently = 2131689918;
 			
 			// aapt resource value: 0x7F0F01BF
-			public const int ptz_preset_exceed_maxnum_failed = 2131689919;
+			public const int ptz_preset_current_position_failed = 2131689919;
 			
 			// aapt resource value: 0x7F0F01C0
-			public const int ptz_preset_invalid_position_failed = 2131689920;
+			public const int ptz_preset_exceed_maxnum_failed = 2131689920;
 			
 			// aapt resource value: 0x7F0F01C1
-			public const int ptz_preset_sound_localization_failed = 2131689921;
+			public const int ptz_preset_invalid_position_failed = 2131689921;
 			
 			// aapt resource value: 0x7F0F01C2
-			public const int ptz_privacying_failed = 2131689922;
+			public const int ptz_preset_sound_localization_failed = 2131689922;
 			
 			// aapt resource value: 0x7F0F01C3
-			public const int push_event_alarm_title = 2131689923;
+			public const int ptz_privacying_failed = 2131689923;
 			
 			// aapt resource value: 0x7F0F01C4
-			public const int push_event_from = 2131689924;
+			public const int push_event_alarm_title = 2131689924;
 			
 			// aapt resource value: 0x7F0F01C5
-			public const int push_event_get = 2131689925;
+			public const int push_event_from = 2131689925;
 			
 			// aapt resource value: 0x7F0F01C6
-			public const int push_event_get_count = 2131689926;
+			public const int push_event_get = 2131689926;
 			
 			// aapt resource value: 0x7F0F01C7
-			public const int push_out_event_alarm_title = 2131689927;
+			public const int push_event_get_count = 2131689927;
 			
 			// aapt resource value: 0x7F0F01C8
-			public const int pwd_not_contain_chinese = 2131689928;
+			public const int push_out_event_alarm_title = 2131689928;
 			
 			// aapt resource value: 0x7F0F01C9
-			public const int qrcode_card = 2131689929;
+			public const int pwd_not_contain_chinese = 2131689929;
 			
 			// aapt resource value: 0x7F0F01CA
-			public const int quality_balanced = 2131689930;
+			public const int qrcode_card = 2131689930;
 			
 			// aapt resource value: 0x7F0F01CB
-			public const int quality_flunet = 2131689931;
+			public const int quality_balanced = 2131689931;
 			
 			// aapt resource value: 0x7F0F01CC
-			public const int quality_hd = 2131689932;
+			public const int quality_flunet = 2131689932;
 			
 			// aapt resource value: 0x7F0F01CD
-			public const int quality_super_hd = 2131689933;
-			
-			// aapt resource value: 0x7F0F01D4
-			public const int querying_camera_text = 2131689940;
+			public const int quality_hd = 2131689933;
 			
 			// aapt resource value: 0x7F0F01CE
-			public const int query_camera_fail = 2131689934;
-			
-			// aapt resource value: 0x7F0F01CF
-			public const int query_camera_fail_network_exception = 2131689935;
-			
-			// aapt resource value: 0x7F0F01D0
-			public const int query_camera_fail_network_exception_or_server_exception = 2131689936;
-			
-			// aapt resource value: 0x7F0F01D1
-			public const int query_camera_fail_not_exit = 2131689937;
-			
-			// aapt resource value: 0x7F0F01D2
-			public const int query_camera_fail_repeat_error = 2131689938;
-			
-			// aapt resource value: 0x7F0F01D3
-			public const int query_camera_fail_server_exception = 2131689939;
+			public const int quality_super_hd = 2131689934;
 			
 			// aapt resource value: 0x7F0F01D5
-			public const int readed = 2131689941;
+			public const int querying_camera_text = 2131689941;
+			
+			// aapt resource value: 0x7F0F01CF
+			public const int query_camera_fail = 2131689935;
+			
+			// aapt resource value: 0x7F0F01D0
+			public const int query_camera_fail_network_exception = 2131689936;
+			
+			// aapt resource value: 0x7F0F01D1
+			public const int query_camera_fail_network_exception_or_server_exception = 2131689937;
+			
+			// aapt resource value: 0x7F0F01D2
+			public const int query_camera_fail_not_exit = 2131689938;
+			
+			// aapt resource value: 0x7F0F01D3
+			public const int query_camera_fail_repeat_error = 2131689939;
+			
+			// aapt resource value: 0x7F0F01D4
+			public const int query_camera_fail_server_exception = 2131689940;
 			
 			// aapt resource value: 0x7F0F01D6
-			public const int realplay = 2131689942;
+			public const int readed = 2131689942;
 			
 			// aapt resource value: 0x7F0F01D7
-			public const int realplay_close_sound_localization_fail = 2131689943;
+			public const int realplay = 2131689943;
 			
 			// aapt resource value: 0x7F0F01D8
-			public const int realplay_encrypt_password_error_message = 2131689944;
+			public const int realplay_close_sound_localization_fail = 2131689944;
 			
 			// aapt resource value: 0x7F0F01D9
-			public const int realplay_encrypt_password_error_title = 2131689945;
+			public const int realplay_encrypt_password_error_message = 2131689945;
 			
 			// aapt resource value: 0x7F0F01DA
-			public const int realplay_fail_connect_device = 2131689946;
+			public const int realplay_encrypt_password_error_title = 2131689946;
 			
 			// aapt resource value: 0x7F0F01DB
-			public const int realplay_fail_device_not_exist = 2131689947;
+			public const int realplay_fail_connect_device = 2131689947;
 			
 			// aapt resource value: 0x7F0F01DC
-			public const int realplay_full_talk_start_tip = 2131689948;
+			public const int realplay_fail_device_not_exist = 2131689948;
 			
 			// aapt resource value: 0x7F0F01DD
-			public const int realplay_loading = 2131689949;
+			public const int realplay_full_talk_start_tip = 2131689949;
 			
 			// aapt resource value: 0x7F0F01DE
-			public const int realplay_login_password_error = 2131689950;
+			public const int realplay_loading = 2131689950;
 			
 			// aapt resource value: 0x7F0F01DF
-			public const int realplay_login_password_msg = 2131689951;
+			public const int realplay_login_password_error = 2131689951;
 			
 			// aapt resource value: 0x7F0F01E0
-			public const int realplay_no_encrypt_password_error = 2131689952;
+			public const int realplay_login_password_msg = 2131689952;
 			
 			// aapt resource value: 0x7F0F01E1
-			public const int realplay_no_permission = 2131689953;
+			public const int realplay_no_encrypt_password_error = 2131689953;
 			
 			// aapt resource value: 0x7F0F01E2
-			public const int realplay_open_sound_localization_fail = 2131689954;
+			public const int realplay_no_permission = 2131689954;
 			
 			// aapt resource value: 0x7F0F01E3
-			public const int realplay_password_error_message1 = 2131689955;
+			public const int realplay_open_sound_localization_fail = 2131689955;
 			
 			// aapt resource value: 0x7F0F01E4
-			public const int realplay_password_error_message3 = 2131689956;
+			public const int realplay_password_error_message1 = 2131689956;
 			
 			// aapt resource value: 0x7F0F01E5
-			public const int realplay_password_error_message4 = 2131689957;
+			public const int realplay_password_error_message3 = 2131689957;
 			
 			// aapt resource value: 0x7F0F01E6
-			public const int realplay_password_error_title = 2131689958;
+			public const int realplay_password_error_message4 = 2131689958;
 			
 			// aapt resource value: 0x7F0F01E7
-			public const int realplay_play_fail = 2131689959;
+			public const int realplay_password_error_title = 2131689959;
 			
 			// aapt resource value: 0x7F0F01E8
-			public const int realplay_play_fail_becauseof_network = 2131689960;
+			public const int realplay_play_fail = 2131689960;
 			
 			// aapt resource value: 0x7F0F01E9
-			public const int realplay_play_no_video_source = 2131689961;
+			public const int realplay_play_fail_becauseof_network = 2131689961;
 			
 			// aapt resource value: 0x7F0F01EA
-			public const int realplay_play_talkback_fail = 2131689962;
+			public const int realplay_play_no_video_source = 2131689962;
 			
 			// aapt resource value: 0x7F0F01EB
-			public const int realplay_play_talkback_fail_ison = 2131689963;
+			public const int realplay_play_talkback_fail = 2131689963;
 			
 			// aapt resource value: 0x7F0F01EC
-			public const int realplay_play_talkback_fail_privacy = 2131689964;
+			public const int realplay_play_talkback_fail_ison = 2131689964;
 			
 			// aapt resource value: 0x7F0F01ED
-			public const int realplay_play_talkback_network_exception = 2131689965;
+			public const int realplay_play_talkback_fail_privacy = 2131689965;
 			
 			// aapt resource value: 0x7F0F01EE
-			public const int realplay_play_talkback_request_timeout = 2131689966;
+			public const int realplay_play_talkback_network_exception = 2131689966;
 			
 			// aapt resource value: 0x7F0F01EF
-			public const int realplay_set_fail_network = 2131689967;
+			public const int realplay_play_talkback_request_timeout = 2131689967;
 			
 			// aapt resource value: 0x7F0F01F0
-			public const int realplay_set_fail_status = 2131689968;
+			public const int realplay_set_fail_network = 2131689968;
 			
 			// aapt resource value: 0x7F0F01F1
-			public const int realplay_set_vediomode_fail = 2131689969;
+			public const int realplay_set_fail_status = 2131689969;
 			
 			// aapt resource value: 0x7F0F01F2
-			public const int realplay_share_no_permission = 2131689970;
+			public const int realplay_set_vediomode_fail = 2131689970;
 			
 			// aapt resource value: 0x7F0F01F3
-			public const int realplay_share_time_over = 2131689971;
+			public const int realplay_share_no_permission = 2131689971;
 			
 			// aapt resource value: 0x7F0F01F4
-			public const int realplay_verifycode_error_message0 = 2131689972;
+			public const int realplay_share_time_over = 2131689972;
 			
 			// aapt resource value: 0x7F0F01F5
-			public const int realplay_verifycode_error_placehold = 2131689973;
+			public const int realplay_verifycode_error_message0 = 2131689973;
 			
 			// aapt resource value: 0x7F0F01F6
-			public const int receice_leave_msg_audio = 2131689974;
+			public const int realplay_verifycode_error_placehold = 2131689974;
 			
 			// aapt resource value: 0x7F0F01F7
-			public const int receice_leave_msg_video = 2131689975;
+			public const int receice_leave_msg_audio = 2131689975;
 			
 			// aapt resource value: 0x7F0F01F8
-			public const int record = 2131689976;
+			public const int receice_leave_msg_video = 2131689976;
 			
 			// aapt resource value: 0x7F0F01F9
-			public const int refresh = 2131689977;
+			public const int record = 2131689977;
 			
 			// aapt resource value: 0x7F0F01FA
-			public const int refresh_empty_hint = 2131689978;
+			public const int refresh = 2131689978;
 			
 			// aapt resource value: 0x7F0F01FB
-			public const int refresh_fail_hint = 2131689979;
-			
-			// aapt resource value: 0x7F0F01FD
-			public const int remoteplayback_capture_fail = 2131689981;
-			
-			// aapt resource value: 0x7F0F01FE
-			public const int remoteplayback_capture_fail_for_memory = 2131689982;
-			
-			// aapt resource value: 0x7F0F01FF
-			public const int remoteplayback_connect_device_error = 2131689983;
-			
-			// aapt resource value: 0x7F0F0200
-			public const int remoteplayback_connect_server_error = 2131689984;
-			
-			// aapt resource value: 0x7F0F0201
-			public const int remoteplayback_fail = 2131689985;
-			
-			// aapt resource value: 0x7F0F0202
-			public const int remoteplayback_norecordfile = 2131689986;
-			
-			// aapt resource value: 0x7F0F0203
-			public const int remoteplayback_norecordfile_alarm = 2131689987;
-			
-			// aapt resource value: 0x7F0F0204
-			public const int remoteplayback_over_link = 2131689988;
-			
-			// aapt resource value: 0x7F0F0205
-			public const int remoteplayback_record_fail = 2131689989;
-			
-			// aapt resource value: 0x7F0F0206
-			public const int remoteplayback_record_fail_for_memory = 2131689990;
+			public const int refresh_empty_hint = 2131689979;
 			
 			// aapt resource value: 0x7F0F01FC
-			public const int remoteplayback_SDCard_disable_use = 2131689980;
+			public const int refresh_fail_hint = 2131689980;
+			
+			// aapt resource value: 0x7F0F01FE
+			public const int remoteplayback_capture_fail = 2131689982;
+			
+			// aapt resource value: 0x7F0F01FF
+			public const int remoteplayback_capture_fail_for_memory = 2131689983;
+			
+			// aapt resource value: 0x7F0F0200
+			public const int remoteplayback_connect_device_error = 2131689984;
+			
+			// aapt resource value: 0x7F0F0201
+			public const int remoteplayback_connect_server_error = 2131689985;
+			
+			// aapt resource value: 0x7F0F0202
+			public const int remoteplayback_fail = 2131689986;
+			
+			// aapt resource value: 0x7F0F0203
+			public const int remoteplayback_norecordfile = 2131689987;
+			
+			// aapt resource value: 0x7F0F0204
+			public const int remoteplayback_norecordfile_alarm = 2131689988;
+			
+			// aapt resource value: 0x7F0F0205
+			public const int remoteplayback_over_link = 2131689989;
+			
+			// aapt resource value: 0x7F0F0206
+			public const int remoteplayback_record_fail = 2131689990;
 			
 			// aapt resource value: 0x7F0F0207
-			public const int remoteplayback_searchfile_fail_for_device = 2131689991;
+			public const int remoteplayback_record_fail_for_memory = 2131689991;
+			
+			// aapt resource value: 0x7F0F01FD
+			public const int remoteplayback_SDCard_disable_use = 2131689981;
 			
 			// aapt resource value: 0x7F0F0208
-			public const int remoteplayback_searchfile_fail_for_network = 2131689992;
+			public const int remoteplayback_searchfile_fail_for_device = 2131689992;
 			
 			// aapt resource value: 0x7F0F0209
-			public const int reset_10_sec_to_release = 2131689993;
+			public const int remoteplayback_searchfile_fail_for_network = 2131689993;
 			
 			// aapt resource value: 0x7F0F020A
-			public const int reset_device = 2131689994;
+			public const int reset_10_sec_to_release = 2131689994;
 			
 			// aapt resource value: 0x7F0F020B
-			public const int result_txt = 2131689995;
+			public const int reset_device = 2131689995;
 			
 			// aapt resource value: 0x7F0F020C
-			public const int retry = 2131689996;
-			
-			// aapt resource value: 0x7F0F020E
-			public const int router = 2131689998;
+			public const int result_txt = 2131689996;
 			
 			// aapt resource value: 0x7F0F020D
-			public const int route_status_light = 2131689997;
+			public const int retry = 2131689997;
 			
 			// aapt resource value: 0x7F0F020F
-			public const int sadp_activate_state1 = 2131689999;
+			public const int router = 2131689999;
+			
+			// aapt resource value: 0x7F0F020E
+			public const int route_status_light = 2131689998;
 			
 			// aapt resource value: 0x7F0F0210
-			public const int sadp_activate_state2 = 2131690000;
+			public const int sadp_activate_state1 = 2131690000;
 			
 			// aapt resource value: 0x7F0F0211
-			public const int sadp_password_input_hint = 2131690001;
+			public const int sadp_activate_state2 = 2131690001;
 			
 			// aapt resource value: 0x7F0F0212
-			public const int sadp_password_toast = 2131690002;
+			public const int sadp_password_input_hint = 2131690002;
 			
 			// aapt resource value: 0x7F0F0213
-			public const int sadp_password_too_weak = 2131690003;
+			public const int sadp_password_toast = 2131690003;
 			
 			// aapt resource value: 0x7F0F0214
-			public const int sadp_quit_activate = 2131690004;
+			public const int sadp_password_too_weak = 2131690004;
 			
 			// aapt resource value: 0x7F0F0215
-			public const int save_encrypt_password_fail_network_exception = 2131690005;
+			public const int sadp_quit_activate = 2131690005;
 			
 			// aapt resource value: 0x7F0F0216
-			public const int scan_add = 2131690006;
+			public const int save_encrypt_password_fail_network_exception = 2131690006;
 			
 			// aapt resource value: 0x7F0F0217
-			public const int scan_connet_network = 2131690007;
+			public const int scan_add = 2131690007;
 			
 			// aapt resource value: 0x7F0F0218
-			public const int scan_cue_txt = 2131690008;
+			public const int scan_connet_network = 2131690008;
 			
 			// aapt resource value: 0x7F0F0219
-			public const int scan_device_add_by_others = 2131690009;
+			public const int scan_cue_txt = 2131690009;
 			
 			// aapt resource value: 0x7F0F021A
-			public const int scan_device_search = 2131690010;
+			public const int scan_device_add_by_others = 2131690010;
 			
 			// aapt resource value: 0x7F0F021B
-			public const int scan_device_serial_no = 2131690011;
+			public const int scan_device_search = 2131690011;
 			
 			// aapt resource value: 0x7F0F021C
-			public const int scan_network_unavailible = 2131690012;
+			public const int scan_device_serial_no = 2131690012;
 			
 			// aapt resource value: 0x7F0F021D
-			public const int scan_probe_qrcode_error = 2131690013;
+			public const int scan_network_unavailible = 2131690013;
 			
 			// aapt resource value: 0x7F0F021E
-			public const int scan_search_probe_qrcode = 2131690014;
+			public const int scan_probe_qrcode_error = 2131690014;
 			
 			// aapt resource value: 0x7F0F021F
-			public const int scan_title_txt = 2131690015;
+			public const int scan_search_probe_qrcode = 2131690015;
 			
 			// aapt resource value: 0x7F0F0220
-			public const int screenshot_fail = 2131690016;
+			public const int scan_title_txt = 2131690016;
 			
 			// aapt resource value: 0x7F0F0221
-			public const int screenshot_success = 2131690017;
+			public const int screenshot_fail = 2131690017;
 			
 			// aapt resource value: 0x7F0F0222
-			public const int sdk_is_init = 2131690018;
+			public const int screenshot_success = 2131690018;
 			
 			// aapt resource value: 0x7F0F0223
-			public const int search = 2131690019;
+			public const int sdk_is_init = 2131690019;
 			
 			// aapt resource value: 0x7F0F0224
-			public const int search_menu_title = 2131690020;
+			public const int search = 2131690020;
 			
 			// aapt resource value: 0x7F0F0225
-			public const int secure_validate = 2131690021;
-			
-			// aapt resource value: 0x7F0F0227
-			public const int secure_validatee_fail = 2131690023;
+			public const int search_menu_title = 2131690021;
 			
 			// aapt resource value: 0x7F0F0226
-			public const int secure_validate_success = 2131690022;
+			public const int secure_validate = 2131690022;
 			
 			// aapt resource value: 0x7F0F0228
-			public const int seek_camera_fail_device_not_support_shipin7 = 2131690024;
+			public const int secure_validatee_fail = 2131690024;
+			
+			// aapt resource value: 0x7F0F0227
+			public const int secure_validate_success = 2131690023;
 			
 			// aapt resource value: 0x7F0F0229
-			public const int select_all = 2131690025;
+			public const int seek_camera_fail_device_not_support_shipin7 = 2131690025;
 			
 			// aapt resource value: 0x7F0F022A
-			public const int select_date = 2131690026;
+			public const int select_all = 2131690026;
 			
 			// aapt resource value: 0x7F0F022B
-			public const int serial_add_hint = 2131690027;
+			public const int select_date = 2131690027;
 			
 			// aapt resource value: 0x7F0F022C
-			public const int serial_add_password_error_title = 2131690028;
+			public const int serial_add_hint = 2131690028;
 			
 			// aapt resource value: 0x7F0F022D
-			public const int serial_input_text = 2131690029;
+			public const int serial_add_password_error_title = 2131690029;
 			
 			// aapt resource value: 0x7F0F022E
-			public const int serial_number_error = 2131690030;
+			public const int serial_input_text = 2131690030;
 			
 			// aapt resource value: 0x7F0F022F
-			public const int serial_number_is_null = 2131690031;
+			public const int serial_number_error = 2131690031;
 			
 			// aapt resource value: 0x7F0F0230
-			public const int serial_number_put_the_right_no = 2131690032;
+			public const int serial_number_is_null = 2131690032;
 			
 			// aapt resource value: 0x7F0F0231
-			public const int server_area = 2131690033;
-			
-			// aapt resource value: 0x7F0F0236
-			public const int setting = 2131690038;
-			
-			// aapt resource value: 0x7F0F0237
-			public const int setting_video_level = 2131690039;
+			public const int serial_number_put_the_right_no = 2131690033;
 			
 			// aapt resource value: 0x7F0F0232
-			public const int set_defence_plan = 2131690034;
+			public const int server_area = 2131690034;
 			
-			// aapt resource value: 0x7F0F0233
-			public const int set_device_wifi_network_need_reset_the_device = 2131690035;
-			
-			// aapt resource value: 0x7F0F0234
-			public const int set_ptz_flip_fail = 2131690036;
-			
-			// aapt resource value: 0x7F0F0235
-			public const int set_ptz_flip_success = 2131690037;
+			// aapt resource value: 0x7F0F0237
+			public const int setting = 2131690039;
 			
 			// aapt resource value: 0x7F0F0238
-			public const int share_devices = 2131690040;
+			public const int setting_video_level = 2131690040;
+			
+			// aapt resource value: 0x7F0F0233
+			public const int set_defence_plan = 2131690035;
+			
+			// aapt resource value: 0x7F0F0234
+			public const int set_device_wifi_network_need_reset_the_device = 2131690036;
+			
+			// aapt resource value: 0x7F0F0235
+			public const int set_ptz_flip_fail = 2131690037;
+			
+			// aapt resource value: 0x7F0F0236
+			public const int set_ptz_flip_success = 2131690038;
 			
 			// aapt resource value: 0x7F0F0239
-			public const int sms_verify_bind_error = 2131690041;
+			public const int share_devices = 2131690041;
 			
 			// aapt resource value: 0x7F0F023A
-			public const int sms_verify_code_received = 2131690042;
+			public const int sms_verify_bind_error = 2131690042;
 			
 			// aapt resource value: 0x7F0F023B
-			public const int source_detection_off = 2131690043;
+			public const int sms_verify_code_received = 2131690043;
 			
 			// aapt resource value: 0x7F0F023C
-			public const int source_detection_on = 2131690044;
+			public const int source_detection_off = 2131690044;
 			
 			// aapt resource value: 0x7F0F023D
-			public const int specified_device = 2131690045;
+			public const int source_detection_on = 2131690045;
 			
 			// aapt resource value: 0x7F0F023E
-			public const int srl_component_falsify = 2131690046;
+			public const int specified_device = 2131690046;
 			
 			// aapt resource value: 0x7F0F023F
-			public const int srl_content_empty = 2131690047;
+			public const int srl_component_falsify = 2131690047;
 			
 			// aapt resource value: 0x7F0F0240
-			public const int srl_footer_failed = 2131690048;
+			public const int srl_content_empty = 2131690048;
 			
 			// aapt resource value: 0x7F0F0241
-			public const int srl_footer_finish = 2131690049;
+			public const int srl_footer_failed = 2131690049;
 			
 			// aapt resource value: 0x7F0F0242
-			public const int srl_footer_loading = 2131690050;
+			public const int srl_footer_finish = 2131690050;
 			
 			// aapt resource value: 0x7F0F0243
-			public const int srl_footer_nothing = 2131690051;
+			public const int srl_footer_loading = 2131690051;
 			
 			// aapt resource value: 0x7F0F0244
-			public const int srl_footer_pulling = 2131690052;
+			public const int srl_footer_nothing = 2131690052;
 			
 			// aapt resource value: 0x7F0F0245
-			public const int srl_footer_refreshing = 2131690053;
+			public const int srl_footer_pulling = 2131690053;
 			
 			// aapt resource value: 0x7F0F0246
-			public const int srl_footer_release = 2131690054;
+			public const int srl_footer_refreshing = 2131690054;
 			
 			// aapt resource value: 0x7F0F0247
-			public const int srl_header_failed = 2131690055;
+			public const int srl_footer_release = 2131690055;
 			
 			// aapt resource value: 0x7F0F0248
-			public const int srl_header_finish = 2131690056;
+			public const int srl_header_failed = 2131690056;
 			
 			// aapt resource value: 0x7F0F0249
-			public const int srl_header_loading = 2131690057;
+			public const int srl_header_finish = 2131690057;
 			
 			// aapt resource value: 0x7F0F024A
-			public const int srl_header_pulling = 2131690058;
+			public const int srl_header_loading = 2131690058;
 			
 			// aapt resource value: 0x7F0F024B
-			public const int srl_header_refreshing = 2131690059;
+			public const int srl_header_pulling = 2131690059;
 			
 			// aapt resource value: 0x7F0F024C
-			public const int srl_header_release = 2131690060;
+			public const int srl_header_refreshing = 2131690060;
 			
 			// aapt resource value: 0x7F0F024D
-			public const int srl_header_secondary = 2131690061;
+			public const int srl_header_release = 2131690061;
 			
 			// aapt resource value: 0x7F0F024E
-			public const int srl_header_update = 2131690062;
+			public const int srl_header_secondary = 2131690062;
 			
 			// aapt resource value: 0x7F0F024F
-			public const int start_cloud = 2131690063;
+			public const int srl_header_update = 2131690063;
 			
 			// aapt resource value: 0x7F0F0250
-			public const int start_to_experience = 2131690064;
+			public const int start_cloud = 2131690064;
 			
 			// aapt resource value: 0x7F0F0251
-			public const int start_voice_talk = 2131690065;
+			public const int start_to_experience = 2131690065;
 			
 			// aapt resource value: 0x7F0F0252
-			public const int status_bar_notification_info_overflow = 2131690066;
+			public const int start_voice_talk = 2131690066;
 			
 			// aapt resource value: 0x7F0F0253
-			public const int step3_adding_device_to_account = 2131690067;
+			public const int status_bar_notification_info_overflow = 2131690067;
 			
 			// aapt resource value: 0x7F0F0254
-			public const int storage_status = 2131690068;
+			public const int step3_adding_device_to_account = 2131690068;
 			
 			// aapt resource value: 0x7F0F0255
-			public const int stream_type = 2131690069;
-			
-			// aapt resource value: 0x7F0F0258
-			public const int string_apiurl = 2131690072;
+			public const int storage_status = 2131690069;
 			
 			// aapt resource value: 0x7F0F0256
-			public const int string_ap_connection = 2131690070;
-			
-			// aapt resource value: 0x7F0F0257
-			public const int string_ap_connection_normal = 2131690071;
+			public const int stream_type = 2131690070;
 			
 			// aapt resource value: 0x7F0F0259
-			public const int string_authurl = 2131690073;
+			public const int string_apiurl = 2131690073;
 			
-			// aapt resource value: 0x7F0F025B
-			public const int string_deviceserial = 2131690075;
+			// aapt resource value: 0x7F0F0257
+			public const int string_ap_connection = 2131690071;
+			
+			// aapt resource value: 0x7F0F0258
+			public const int string_ap_connection_normal = 2131690072;
 			
 			// aapt resource value: 0x7F0F025A
-			public const int string_device_network_mode = 2131690074;
+			public const int string_authurl = 2131690074;
 			
 			// aapt resource value: 0x7F0F025C
-			public const int string_ezopenurl = 2131690076;
+			public const int string_deviceserial = 2131690076;
+			
+			// aapt resource value: 0x7F0F025B
+			public const int string_device_network_mode = 2131690075;
 			
 			// aapt resource value: 0x7F0F025D
-			public const int string_get_device_version_fail = 2131690077;
+			public const int string_ezopenurl = 2131690077;
 			
 			// aapt resource value: 0x7F0F025E
-			public const int string_smart_and_sound_wave_connection = 2131690078;
+			public const int string_get_device_version_fail = 2131690078;
 			
 			// aapt resource value: 0x7F0F025F
-			public const int string_smart_connection = 2131690079;
+			public const int string_smart_and_sound_wave_connection = 2131690079;
 			
 			// aapt resource value: 0x7F0F0260
-			public const int string_smart_connection_normal = 2131690080;
+			public const int string_smart_connection = 2131690080;
 			
 			// aapt resource value: 0x7F0F0261
-			public const int string_sound_wave_connection = 2131690081;
+			public const int string_smart_connection_normal = 2131690081;
 			
 			// aapt resource value: 0x7F0F0262
-			public const int string_wired_connection = 2131690082;
+			public const int string_sound_wave_connection = 2131690082;
 			
 			// aapt resource value: 0x7F0F0263
-			public const int submit_secure_validate = 2131690083;
+			public const int string_wired_connection = 2131690083;
 			
 			// aapt resource value: 0x7F0F0264
-			public const int submit_sms_code = 2131690084;
+			public const int submit_secure_validate = 2131690084;
 			
 			// aapt resource value: 0x7F0F0265
-			public const int switch_to_handset = 2131690085;
+			public const int submit_sms_code = 2131690085;
 			
 			// aapt resource value: 0x7F0F0266
-			public const int switch_to_speaker = 2131690086;
+			public const int switch_to_handset = 2131690086;
 			
 			// aapt resource value: 0x7F0F0267
-			public const int tab_more = 2131690087;
+			public const int switch_to_speaker = 2131690087;
 			
 			// aapt resource value: 0x7F0F0268
-			public const int talk = 2131690088;
-			
-			// aapt resource value: 0x7F0F026B
-			public const int talking = 2131690091;
+			public const int tab_more = 2131690088;
 			
 			// aapt resource value: 0x7F0F0269
-			public const int talk_open_failed = 2131690089;
-			
-			// aapt resource value: 0x7F0F026A
-			public const int talk_open_success = 2131690090;
+			public const int talk = 2131690089;
 			
 			// aapt resource value: 0x7F0F026C
-			public const int tip_heard_voice = 2131690092;
+			public const int talking = 2131690092;
+			
+			// aapt resource value: 0x7F0F026A
+			public const int talk_open_failed = 2131690090;
+			
+			// aapt resource value: 0x7F0F026B
+			public const int talk_open_success = 2131690091;
 			
 			// aapt resource value: 0x7F0F026D
-			public const int tip_login_out = 2131690093;
+			public const int tip_heard_voice = 2131690093;
 			
 			// aapt resource value: 0x7F0F026E
-			public const int tip_of_added_by_yourself_and_online = 2131690094;
+			public const int tip_login_out = 2131690094;
 			
 			// aapt resource value: 0x7F0F026F
-			public const int tip_of_bad_net = 2131690095;
+			public const int tip_of_added_by_yourself_and_online = 2131690095;
 			
 			// aapt resource value: 0x7F0F0270
-			public const int tip_playback_again = 2131690096;
+			public const int tip_of_bad_net = 2131690096;
 			
 			// aapt resource value: 0x7F0F0271
-			public const int tip_specified_device = 2131690097;
+			public const int tip_playback_again = 2131690097;
 			
 			// aapt resource value: 0x7F0F0272
-			public const int title_activate_device = 2131690098;
+			public const int tip_specified_device = 2131690098;
 			
 			// aapt resource value: 0x7F0F0273
-			public const int title_activate_device_fail = 2131690099;
+			public const int title_activate_device = 2131690099;
 			
 			// aapt resource value: 0x7F0F0274
-			public const int title_activity_connect_device_wifi = 2131690100;
+			public const int title_activate_device_fail = 2131690100;
 			
 			// aapt resource value: 0x7F0F0275
-			public const int title_activity_ezupgrade_device = 2131690101;
+			public const int title_activity_connect_device_wifi = 2131690101;
 			
 			// aapt resource value: 0x7F0F0276
-			public const int today = 2131690102;
+			public const int title_activity_ezupgrade_device = 2131690102;
 			
 			// aapt resource value: 0x7F0F0277
-			public const int touch_fingerprint_sensor_hint = 2131690103;
+			public const int today = 2131690103;
 			
 			// aapt resource value: 0x7F0F0278
-			public const int touch_to_load = 2131690104;
+			public const int touch_fingerprint_sensor_hint = 2131690104;
 			
 			// aapt resource value: 0x7F0F0279
-			public const int try_again = 2131690105;
+			public const int touch_to_load = 2131690105;
 			
 			// aapt resource value: 0x7F0F027A
-			public const int ui_call_demo_txt = 2131690106;
+			public const int try_again = 2131690106;
 			
 			// aapt resource value: 0x7F0F027B
-			public const int unable_identify_two_dimensional_code_tip = 2131690107;
+			public const int ui_call_demo_txt = 2131690107;
 			
 			// aapt resource value: 0x7F0F027C
-			public const int unbind_to_bind = 2131690108;
+			public const int unable_identify_two_dimensional_code_tip = 2131690108;
 			
 			// aapt resource value: 0x7F0F027D
-			public const int unknow_ssid = 2131690109;
+			public const int unbind_to_bind = 2131690109;
 			
 			// aapt resource value: 0x7F0F027E
-			public const int unlock_fail = 2131690110;
+			public const int unknow_ssid = 2131690110;
 			
 			// aapt resource value: 0x7F0F027F
-			public const int unlock_success = 2131690111;
+			public const int unlock_fail = 2131690111;
 			
 			// aapt resource value: 0x7F0F0280
-			public const int unnamed = 2131690112;
+			public const int unlock_success = 2131690112;
 			
 			// aapt resource value: 0x7F0F0281
-			public const int update_exit = 2131690113;
+			public const int unnamed = 2131690113;
 			
 			// aapt resource value: 0x7F0F0282
-			public const int upgrade = 2131690114;
+			public const int update_exit = 2131690114;
 			
 			// aapt resource value: 0x7F0F0283
-			public const int upgrade_fail = 2131690115;
+			public const int upgrade = 2131690115;
 			
 			// aapt resource value: 0x7F0F0284
-			public const int upgrade_progress = 2131690116;
+			public const int upgrade_fail = 2131690116;
 			
 			// aapt resource value: 0x7F0F0285
-			public const int upgrade_success = 2131690117;
+			public const int upgrade_progress = 2131690117;
 			
 			// aapt resource value: 0x7F0F0286
-			public const int upgrade_success_progress = 2131690118;
+			public const int upgrade_success = 2131690118;
 			
 			// aapt resource value: 0x7F0F0287
-			public const int user_name_txt = 2131690119;
+			public const int upgrade_success_progress = 2131690119;
 			
 			// aapt resource value: 0x7F0F0288
-			public const int verify_code_error = 2131690120;
+			public const int user_name_txt = 2131690120;
 			
 			// aapt resource value: 0x7F0F0289
-			public const int verify_sms_code_fail = 2131690121;
+			public const int verify_code_error = 2131690121;
 			
 			// aapt resource value: 0x7F0F028A
-			public const int verify_sms_code_success = 2131690122;
+			public const int verify_sms_code_fail = 2131690122;
 			
 			// aapt resource value: 0x7F0F028B
-			public const int version_newest = 2131690123;
+			public const int verify_sms_code_success = 2131690123;
 			
 			// aapt resource value: 0x7F0F028C
-			public const int video_answer = 2131690124;
+			public const int version_newest = 2131690124;
 			
 			// aapt resource value: 0x7F0F028D
-			public const int video_box = 2131690125;
+			public const int video_answer = 2131690125;
 			
 			// aapt resource value: 0x7F0F028E
-			public const int video_confirm = 2131690126;
+			public const int video_box = 2131690126;
 			
 			// aapt resource value: 0x7F0F028F
-			public const int video_device = 2131690127;
+			public const int video_confirm = 2131690127;
 			
 			// aapt resource value: 0x7F0F0290
-			public const int video_fail = 2131690128;
+			public const int video_device = 2131690128;
 			
 			// aapt resource value: 0x7F0F0291
-			public const int video_hang_up = 2131690129;
+			public const int video_fail = 2131690129;
 			
 			// aapt resource value: 0x7F0F0292
-			public const int video_icon = 2131690130;
+			public const int video_hang_up = 2131690130;
 			
 			// aapt resource value: 0x7F0F0293
-			public const int video_not_answer = 2131690131;
+			public const int video_icon = 2131690131;
 			
 			// aapt resource value: 0x7F0F0294
-			public const int video_screenshot = 2131690132;
+			public const int video_not_answer = 2131690132;
 			
 			// aapt resource value: 0x7F0F0295
-			public const int video_square = 2131690133;
+			public const int video_screenshot = 2131690133;
 			
 			// aapt resource value: 0x7F0F0296
-			public const int video_success = 2131690134;
+			public const int video_square = 2131690134;
 			
 			// aapt resource value: 0x7F0F0297
-			public const int video_talk_call_cancel = 2131690135;
+			public const int video_success = 2131690135;
 			
 			// aapt resource value: 0x7F0F0298
-			public const int video_talk_call_is_accepted = 2131690136;
+			public const int video_talk_call_cancel = 2131690136;
 			
 			// aapt resource value: 0x7F0F0299
-			public const int video_talk_is_playing = 2131690137;
+			public const int video_talk_call_is_accepted = 2131690137;
 			
 			// aapt resource value: 0x7F0F029A
-			public const int video_talk_sdk_toast_hang_up = 2131690138;
+			public const int video_talk_is_playing = 2131690138;
 			
 			// aapt resource value: 0x7F0F029B
-			public const int video_talk_sdk_toast_nobody = 2131690139;
+			public const int video_talk_sdk_toast_hang_up = 2131690139;
 			
 			// aapt resource value: 0x7F0F029C
-			public const int video_talk_signal_weak = 2131690140;
+			public const int video_talk_sdk_toast_nobody = 2131690140;
 			
 			// aapt resource value: 0x7F0F029D
-			public const int video_talk_watch_is_busy = 2131690141;
+			public const int video_talk_signal_weak = 2131690141;
 			
 			// aapt resource value: 0x7F0F029E
-			public const int video_talk_watch_temperature_high_hang = 2131690142;
+			public const int video_talk_watch_is_busy = 2131690142;
 			
 			// aapt resource value: 0x7F0F029F
-			public const int video_talk_watch_temperature_high_hint = 2131690143;
+			public const int video_talk_watch_temperature_high_hang = 2131690143;
 			
 			// aapt resource value: 0x7F0F02A0
-			public const int video_talk_watch_temperature_high_reject = 2131690144;
+			public const int video_talk_watch_temperature_high_hint = 2131690144;
 			
 			// aapt resource value: 0x7F0F02A1
-			public const int video_talk_watch_temperature_high_warn = 2131690145;
+			public const int video_talk_watch_temperature_high_reject = 2131690145;
 			
 			// aapt resource value: 0x7F0F02A2
-			public const int video_tip = 2131690146;
+			public const int video_talk_watch_temperature_high_warn = 2131690146;
 			
 			// aapt resource value: 0x7F0F02A3
-			public const int video_unlock = 2131690147;
+			public const int video_tip = 2131690147;
 			
 			// aapt resource value: 0x7F0F02A4
-			public const int wait = 2131690148;
+			public const int video_unlock = 2131690148;
 			
 			// aapt resource value: 0x7F0F02A5
-			public const int web_login_button_txt = 2131690149;
+			public const int wait = 2131690149;
 			
 			// aapt resource value: 0x7F0F02A6
-			public const int wechat_interconnect = 2131690150;
+			public const int web_login_button_txt = 2131690150;
 			
 			// aapt resource value: 0x7F0F02A7
-			public const int wifi_connected = 2131690151;
+			public const int wechat_interconnect = 2131690151;
 			
 			// aapt resource value: 0x7F0F02A8
-			public const int wifi_connection_finish_need_refresh = 2131690152;
+			public const int wifi_connected = 2131690152;
 			
 			// aapt resource value: 0x7F0F02A9
-			public const int wifi_set = 2131690153;
+			public const int wifi_connection_finish_need_refresh = 2131690153;
 			
 			// aapt resource value: 0x7F0F02AA
-			public const int wifi_setting = 2131690154;
+			public const int wifi_set = 2131690154;
 			
 			// aapt resource value: 0x7F0F02AB
-			public const int wired_connection = 2131690155;
-			
-			// aapt resource value: 0x7F0F02AD
-			public const int xlistview_footer_hint_normal = 2131690157;
+			public const int wifi_setting = 2131690155;
 			
 			// aapt resource value: 0x7F0F02AC
-			public const int xlistview_footer_hint_no_more_device = 2131690156;
+			public const int wired_connection = 2131690156;
 			
 			// aapt resource value: 0x7F0F02AE
-			public const int xlistview_footer_hint_ready = 2131690158;
+			public const int xlistview_footer_hint_normal = 2131690158;
+			
+			// aapt resource value: 0x7F0F02AD
+			public const int xlistview_footer_hint_no_more_device = 2131690157;
 			
 			// aapt resource value: 0x7F0F02AF
-			public const int xlistview_footer_no_more = 2131690159;
+			public const int xlistview_footer_hint_ready = 2131690159;
 			
 			// aapt resource value: 0x7F0F02B0
-			public const int xlistview_footer_no_more_msg = 2131690160;
+			public const int xlistview_footer_no_more = 2131690160;
 			
 			// aapt resource value: 0x7F0F02B1
-			public const int xlistview_header_hint_loading = 2131690161;
+			public const int xlistview_footer_no_more_msg = 2131690161;
 			
 			// aapt resource value: 0x7F0F02B2
-			public const int xlistview_header_hint_more = 2131690162;
+			public const int xlistview_header_hint_loading = 2131690162;
 			
 			// aapt resource value: 0x7F0F02B3
-			public const int xlistview_header_hint_normal = 2131690163;
+			public const int xlistview_header_hint_more = 2131690163;
 			
 			// aapt resource value: 0x7F0F02B4
-			public const int xlistview_header_hint_ready = 2131690164;
+			public const int xlistview_header_hint_normal = 2131690164;
 			
 			// aapt resource value: 0x7F0F02B5
-			public const int xlistview_header_last_time = 2131690165;
+			public const int xlistview_header_hint_ready = 2131690165;
+			
+			// aapt resource value: 0x7F0F02B6
+			public const int xlistview_header_last_time = 2131690166;
 			
 			static String()
 			{
diff --git a/HDL_APP_Project.sln b/HDL_APP_Project.sln
index 6e5610f..dd41a42 100644
--- a/HDL_APP_Project.sln
+++ b/HDL_APP_Project.sln
@@ -9,6 +9,8 @@
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Blufi", "HdlBluWi\Blufi.csproj", "{2DDF4C3C-6998-432E-9F43-6786D82F0630}"
 EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Shared.IOS.HDLLinphoneSDK", "..\Linphone\HDLLinphoneSDK_IOS\Shared.IOS.HDLLinphoneSDK\Shared.IOS.HDLLinphoneSDK\Shared.IOS.HDLLinphoneSDK.csproj", "{9D978BB5-0B26-40BA-A7EC-C629B808D2BE}"
+EndProject
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
 		Debug|Any CPU = Debug|Any CPU
@@ -55,5 +57,17 @@
 		{2DDF4C3C-6998-432E-9F43-6786D82F0630}.Debug|iPhone.Build.0 = Debug|Any CPU
 		{2DDF4C3C-6998-432E-9F43-6786D82F0630}.Release|iPhone.ActiveCfg = Release|Any CPU
 		{2DDF4C3C-6998-432E-9F43-6786D82F0630}.Release|iPhone.Build.0 = Release|Any CPU
+		{9D978BB5-0B26-40BA-A7EC-C629B808D2BE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{9D978BB5-0B26-40BA-A7EC-C629B808D2BE}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{9D978BB5-0B26-40BA-A7EC-C629B808D2BE}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{9D978BB5-0B26-40BA-A7EC-C629B808D2BE}.Release|Any CPU.Build.0 = Release|Any CPU
+		{9D978BB5-0B26-40BA-A7EC-C629B808D2BE}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+		{9D978BB5-0B26-40BA-A7EC-C629B808D2BE}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
+		{9D978BB5-0B26-40BA-A7EC-C629B808D2BE}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
+		{9D978BB5-0B26-40BA-A7EC-C629B808D2BE}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
+		{9D978BB5-0B26-40BA-A7EC-C629B808D2BE}.Debug|iPhone.ActiveCfg = Debug|Any CPU
+		{9D978BB5-0B26-40BA-A7EC-C629B808D2BE}.Debug|iPhone.Build.0 = Debug|Any CPU
+		{9D978BB5-0B26-40BA-A7EC-C629B808D2BE}.Release|iPhone.ActiveCfg = Release|Any CPU
+		{9D978BB5-0B26-40BA-A7EC-C629B808D2BE}.Release|iPhone.Build.0 = Release|Any CPU
 	EndGlobalSection
 EndGlobal
diff --git a/HDL_ON/Common/ApiUtlis.cs b/HDL_ON/Common/ApiUtlis.cs
index 2229c1c..e14a122 100644
--- a/HDL_ON/Common/ApiUtlis.cs
+++ b/HDL_ON/Common/ApiUtlis.cs
@@ -284,7 +284,13 @@
                     if (isInterphoneType_HDL)
                     {
                         //HDLLinphone鍙瀵硅,鑾峰彇Sip璐﹀彿骞跺垵濮嬪寲SDK
-                        HDLLinphone.Current.getHDLSipInfoAndInitSDK(DB_ResidenceData.Instance.CurrentRegion.id);
+                        HDLLinphone.Current.GetHDLSipInfoAndInitSDK(DB_ResidenceData.Instance.CurrentRegion.id);
+                    }
+                    else
+                    {
+                        Utlis.WriteLine("褰撳墠浣忓畢涓嶆敮鎸丠DL鍙瀵硅,閫�鍑虹櫥褰�");
+                        //褰撳墠浣忓畢涓嶆敮鎸丠DL鍙瀵硅
+                        HDLLinphone.Current.LogoutAllAccount();
                     }
                 }
                 catch (Exception ex)
diff --git a/HDL_ON/Common/HDLCommon.cs b/HDL_ON/Common/HDLCommon.cs
index 68b8800..d986e84 100644
--- a/HDL_ON/Common/HDLCommon.cs
+++ b/HDL_ON/Common/HDLCommon.cs
@@ -436,6 +436,8 @@
                     UserInfo.Current.LastTime = DateTime.MinValue;
                     UserInfo.Current.SaveUserInfo();
                     DB_ResidenceData.Instance.EixtAccount();
+                    //4.娉ㄩ攢HDLSIP璐﹀彿鐧诲綍 2021-08-20
+                    HDLLinphone.Current.LogoutAllAccount();
                 }
                 catch (Exception ex)
                 {
diff --git a/HDL_ON/DAL/ThirdPartySdk/ESOnVideo.cs b/HDL_ON/DAL/ThirdPartySdk/ESOnVideo.cs
index aabc46e..eeb03b1 100644
--- a/HDL_ON/DAL/ThirdPartySdk/ESOnVideo.cs
+++ b/HDL_ON/DAL/ThirdPartySdk/ESOnVideo.cs
@@ -83,7 +83,7 @@
                 //vc.MLCCallDelegate = new OnLCCallDelegate(this);
                 Shared.Application.currentVC.NavigationController.PushViewController(vc, true);
             }
-            else
+            else if(interphoneType == InterphoneType.FLVI.ToString())
             {
 
                 ESOnMonitorViewController vc = new ESOnMonitorViewController();
@@ -93,6 +93,14 @@
                 //vc.RoomName = mESVideoInfo.RoomName;
                 //vc.MESCallDelegate = new OnESCallDelegate(this);
                 Shared.Application.currentVC.NavigationController.PushViewController(vc, true);
+            }else if (interphoneType == InterphoneType.HDL.ToString())
+            {
+                //HDLLinphone 鐙勮�愬厠
+                HDLLinphone.Current.ShowESVideoMonitor(mESVideoInfo);
+            }
+            else
+            {
+                HDLUtils.WriteLine("鏈鎺ワ紝涓嶆敮鎸佺洃瑙�");
             }
 #else
             Intent intent = null;
diff --git a/HDL_ON/DAL/ThirdPartySdk/HDLLinphone.cs b/HDL_ON/DAL/ThirdPartySdk/HDLLinphone.cs
index 6055281..bd931dc 100644
--- a/HDL_ON/DAL/ThirdPartySdk/HDLLinphone.cs
+++ b/HDL_ON/DAL/ThirdPartySdk/HDLLinphone.cs
@@ -5,6 +5,7 @@
 using HDL_ON;
 using HDL_ON.DAL.Server;
 using HDL_ON.Entity;
+
 #if __Android__
 using Android.App;
 using Android.Content;
@@ -13,18 +14,24 @@
 using Com.Hdl.Hdllinphonesdk;
 #else
 using Foundation;
+using UIKit;
+using Shared.IOS.HDLLinphoneSDK;
 #endif
 
 namespace Shared
 {
+    /// <summary>
+    /// 鐩墠鏄瘡涓綇瀹呭搴斾竴涓猄IP璐﹀彿锛屽垏鎹綇瀹呴渶瑕侀噸鏂拌幏鍙朣IP璐﹀彿
+    /// </summary>
     public class HDLLinphone
     {
+        /// <summary>
+        /// 
+        /// </summary>
         public HDLLinphone()
         {
-            //鍒ゆ柇鏈夋病鏈夊垵濮嬪寲SDK锛屾病鍒濆鍖栬繃鍒濆鍖栦竴娆�
-            InitLinphone();
+           
         }
-
         /// <summary>
         /// 
         /// </summary>
@@ -44,6 +51,30 @@
             }
         }
 
+     
+        /// <summary>
+        /// 褰撳墠浣忓畢鏄惁鏀寔鍙瀵硅
+        /// </summary>
+        public bool IsEnable = false;
+        /// <summary>
+        /// 鏄惁鑷姩璺宠浆鍛煎彨椤甸潰,
+        /// false锛氭敹鍒版帹閫佸苟涓斿凡缁忔敹鍒皊ip鍛煎彨鎵嶈烦杞懠鍙〉闈�
+        /// true锛氬師鐢熸敹鍒板懠鍙┈涓婅烦杞懠鍙〉闈紝涓嶇瓑寰呮帹閫佽繃鏉�
+        /// </summary>
+        bool IsAutoJumpCallView = false;
+        /// <summary>
+        /// 鏄惁鍒濆鍖栦簡SDK
+        /// </summary>
+        bool IsInitSdk;
+        /// <summary>
+        /// 褰撳墠鐧诲綍鐨凷ip璐﹀彿
+        /// </summary>
+        HDLSipInfo currentHDLSipInfo;
+        /// <summary>
+        /// 鍙瀵硅璁惧鍙傛暟
+        /// </summary>
+        HDLCallVideoInfo mHDLCallVideoInfo;
+
         #region 鈻�  --  鍒濆鍖朣DK_______________________________
         /// <summary>
         /// 鍒濆鍖朣DK
@@ -51,52 +82,142 @@
         void InitLinphone()
         {
             //闃叉閲嶅鍒濆鍖�
-            if (isInitSdk) return;
+            if (IsInitSdk) return;
 
-            isInitSdk = true;
+            IsInitSdk = true;
 
 #if __IOS__
 
             Shared.IOS.HDLLinphoneSDK.HDLLinPhoneSDK.Instance().InitalLinPhone();
+            //璁剧疆鏀跺埌鏉ョ數鍚庛�佹槸鍚﹂渶鑷姩璺宠浆鍛煎彨椤甸潰鏂规
+            Shared.IOS.HDLLinphoneSDK.HDLLinPhoneSDK.Instance().IsAutoJumpCallView = IsAutoJumpCallView;
+            //璁剧疆Listener鐩戝惉
+            mOnHDLLinphoneCallDelegate = new OnHDLLinphoneCallDelegate(this);
+            Shared.IOS.HDLLinphoneSDK.HDLLinPhoneSDK.Instance().HdlLinphoneCallDelegate = mOnHDLLinphoneCallDelegate;
 #else
-            Com.Hdl.Hdllinphonesdk.HDLLinphoneKit.Instance.InitLinphone(Application.Activity);
+            HDLLinphoneKit.Instance.InitLinphone(Application.Activity);
+            //璁剧疆鏀跺埌鏉ョ數鍚庛�佹槸鍚﹂渶鑷姩璺宠浆鍛煎彨椤甸潰鏂规
+            HDLLinphoneKit.Instance.AutoJumpCallView = IsAutoJumpCallView;
+            //璁剧疆Listener鐩戝惉
             setOnHDLLinphoneCallListener();
 #endif
-
-
         }
 
-        /// <summary>
-        /// 褰撳墠鐧诲綍鐨凷ip璐﹀彿
-        /// </summary>
-        HDLSipInfo currentHDLSipInfo;
+       
         /// <summary>
         /// 璁剧疆sip鐧诲綍璐﹀彿
         /// </summary>
         /// <param name="mHDLSipInfo"></param>
-        public void SetAccountAndLogin(HDLSipInfo mHDLSipInfo) {
+        public void SetAccountAndLogin(HDLSipInfo mHDLSipInfo)
+        {
 
             this.currentHDLSipInfo = mHDLSipInfo;
 
             if (mHDLSipInfo == null) return;
-          
+
 #if __IOS__
-            //Shared.IOS.HDLLinphoneSDK.HDLLinPhoneSDK.Instance().Login("3333", "85521566", "116.62.26.215:5060");
+            //Shared.IOS.HDLLinphoneSDK.HDLLinPhoneSDK.Instance().Login("6666", "85521566", "116.62.26.215:5060");
             Shared.IOS.HDLLinphoneSDK.HDLLinPhoneSDK.Instance().Login(mHDLSipInfo.sipAccount, mHDLSipInfo.sipPasswd, mHDLSipInfo.realm);
 #else
-            Com.Hdl.Hdllinphonesdk.HDLLinphoneKit.Instance.SetAccountAndLogin(mHDLSipInfo.sipAccount, mHDLSipInfo.sipPasswd, mHDLSipInfo.realm);
-            //Com.Hdl.Hdllinphonesdk.Core.EasyLinphone.SetAccountAndLogin("61723164995710", "8ec02ce0", "47.94.42.230:25060");
+            HDLLinphoneKit.Instance.SetAccountAndLogin(mHDLSipInfo.sipAccount, mHDLSipInfo.sipPasswd, mHDLSipInfo.realm);
 #endif
+
+        }
+
+        /// <summary>
+        /// 娉ㄩ攢鎵�鏈夎处鍙�
+        /// </summary>
+        public void LogoutAllAccount() {
+            //娌″垵濮嬪寲杩囧垯杩斿洖
+            if (!IsInitSdk) return;
+
+            this.currentHDLSipInfo = null;
+            this.mHDLCallVideoInfo = null;
+#if __IOS__
+
+            HDLLinPhoneSDK.Instance().LogoutAllLinphoneUser();
+#else
+            HDLLinphoneKit.Instance.Logout();
+#endif
+        }
+
+        /// <summary>
+        /// 娓呴櫎閰嶇疆琛�
+        /// </summary>
+        public void ClearProxyConfig()
+        {
+#if __IOS__
+
+            HDLLinPhoneSDK.Instance().ClearAllConfigs();
+#else
+            HDLLinphoneKit.Instance.ClearProxyConfig();
+#endif
+        }
+
+        #endregion
+
+        #region 鈻�  --  鑾峰彇sip璐﹀彿_______________________________
+        /// <summary>
+        /// 鑾峰彇褰撳墠浣忓畢鐨凷IP璐﹀彿
+        /// </summary>
+        public HDLSipInfo GetHDLSipInfo(string homeId)
+        {
+            Dictionary<string, object> d = new Dictionary<string, object>();
+            d.Add("homeId", homeId);
+
+            var requestJson = HttpUtil.GetSignRequestJson(d);
+            var resultObj = HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_VideoDevice_GetSipAccount, requestJson);
+
+            if (resultObj.Code == StateCode.SUCCESS)
+            {
+                if (string.IsNullOrEmpty(resultObj.Data.ToString()))
+                {
+                    //鎺х殑璇濅唬琛ㄥ綋鍓嶄綇瀹呬笉鏀寔
+                    return null;
+                }
+                else
+                {
+                    var info = Newtonsoft.Json.JsonConvert.DeserializeObject<HDLSipInfo>(resultObj.Data.ToString());
+                    return info;
+                }
+            }
+            else
+            {
+                return null;
+            }
+
+        }
+
+        /// <summary>
+        /// 璇锋眰鏈嶅姟鍣ㄨ幏鍙栧綋鍓嶄綇瀹匰ip璐﹀彿淇℃伅骞跺垵濮嬪寲LinphoneSDK鍜岀櫥褰�
+        /// </summary>
+        /// <param name="homeId"></param>
+        public void GetHDLSipInfoAndInitSDK(string homeId)
+        {
+            try
+            {
+                //鍏堟竻绌哄懠鍙拰鐩戣璁惧淇℃伅
+                InitCallInfo(null);
+                HDLSipInfo mHDLSipInfo = GetHDLSipInfo(homeId);
+                if (mHDLSipInfo != null)
+                {
+                    Application.RunOnMainThread(() =>
+                    {
+                        InitLinphone();
+                        mHDLSipInfo.homeId = homeId;
+                        SetAccountAndLogin(mHDLSipInfo);
+                        Utlis.WriteLine("CALL 鑾峰彇SIP璐﹀彿鎴愬姛锛�" + mHDLSipInfo.sipAccount);
+                    });
+                }
+            }
+            catch { }
 
         }
         #endregion
 
-        #region 鈻�  -- 鍔ㄤ綔鍥炶皟鍜屽師鐢熶氦浜掞紝鎻愪氦璁板綍鍒颁簯绔痏______________________________
-        /// <summary>
-        /// 鍙瀵硅璁惧鍙傛暟
-        /// </summary>
-        public HDLCallVideoInfo mHDLCallVideoInfo;
 
+        #region 鈻�  -- 鍔ㄤ綔鍥炶皟鍜屽師鐢熶氦浜掞紝鎻愪氦璁板綍鍒颁簯绔痏______________________________
+       
         /// <summary>
         /// 鍒濆鍖栧懠鍙弬鏁�
         /// </summary>
@@ -153,7 +274,7 @@
 
         }
 
-        DateTime UnlockDateTime = DateTime.MinValue;
+        //DateTime UnlockDateTime = DateTime.MinValue;
         #endregion
 
         #region 鈻�  --  鏂版帴鍚拰寮�閿佹帴鍙______________________________
@@ -244,72 +365,7 @@
         }
         #endregion
 
-        #region 鈻�  --  鑾峰彇sip璐﹀彿_______________________________
-        /// <summary>
-        /// 鏄惁鍒濆鍖栦簡SDK
-        /// </summary>
-        public bool isInitSdk;
-        /// <summary>
-        /// 鑾峰彇褰撳墠浣忓畢鐨凷IP璐﹀彿
-        /// </summary>
-        public HDLSipInfo GetHDLSipInfo(string homeId)
-        {
-            Dictionary<string, object> d = new Dictionary<string, object>();
-            d.Add("homeId", homeId);
-
-            var requestJson = HttpUtil.GetSignRequestJson(d);
-            var resultObj = HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_VideoDevice_GetSipAccount, requestJson);
-
-            if (resultObj.Code == StateCode.SUCCESS)
-            {
-                if (string.IsNullOrEmpty(resultObj.Data.ToString()))
-                {
-                    //鎺х殑璇濅唬琛ㄥ綋鍓嶄綇瀹呬笉鏀寔
-                    return null;
-                }
-                else
-                {
-                    var info = Newtonsoft.Json.JsonConvert.DeserializeObject<HDLSipInfo>(resultObj.Data.ToString());
-                    return info;
-                }
-            }
-            else
-            {
-                return null;
-            }
-
-        }
-
-        /// <summary>
-        /// 鑾峰彇褰撳墠浣忓畢Sip璐﹀彿淇℃伅骞跺垵濮嬪寲LinphoneSDK鍜岀櫥褰�
-        /// </summary>
-        /// <param name="homeId"></param>
-        public void getHDLSipInfoAndInitSDK(string homeId)
-        {
-            try
-            {
-                //鍏堟竻绌哄懠鍙拰鐩戣璁惧淇℃伅
-                InitCallInfo(null);
-                HDLSipInfo mHDLSipInfo = GetHDLSipInfo(homeId);
-                if (mHDLSipInfo != null)
-                {
-                    InitLinphone();
-                    mHDLSipInfo.homeId = homeId;
-                    SetAccountAndLogin(mHDLSipInfo);
-                    //Application.RunOnMainThread(() =>
-                    //{
-                    //    InitLinphone();
-                    //    SetAccountAndLogin(mHDLSipInfo);
-                    //});
-                }
-            }
-            catch
-            {
-
-            }
-        }
-        #endregion
-
+     
         #region 鈻�  --  璺宠浆鐩戞帶椤甸潰_______________________________
         /// <summary>
         /// 璺宠浆鐩戞帶椤甸潰
@@ -317,6 +373,14 @@
         /// <param name="mESVideoInfo"></param>
         public void ShowESVideoMonitor(ESVideoInfo mESVideoInfo)
         {
+            InitLinphone();
+            //sip璐﹀彿涓虹┖
+            if (string.IsNullOrEmpty(mESVideoInfo.deviceSipAccount))
+            {
+
+                HDLCommon.Current.ShowAlert(Language.StringByID(StringId.shebeibucunzai));
+                return;
+            }
             HDLCallVideoInfo mHDLCallVideoInfo = new HDLCallVideoInfo();
             mHDLCallVideoInfo.HomeId = mESVideoInfo.HomeId;
             mHDLCallVideoInfo.DeviceId = mESVideoInfo.Lc_DeviceId;
@@ -326,7 +390,9 @@
             InitCallInfo(mHDLCallVideoInfo);
 
 #if __IOS__
-               
+
+            HDLLinPhoneSDK.Instance().CallWithUserName(mHDLCallVideoInfo.DeviceSipAccount, mHDLCallVideoInfo.DeviceName);
+
 #else
             //1.鍏堝懠鍙澶�
             Com.Hdl.Hdllinphonesdk.HDLLinphoneKit.Instance.CallTo(mHDLCallVideoInfo.DeviceSipAccount, true);
@@ -342,11 +408,13 @@
 
         #region 鈻�  --  璺宠浆鍛煎彨椤甸潰_______________________________
         /// <summary>
-        /// 璺宠浆鍛煎彨椤甸潰
+        /// 鏀跺埌鎺ㄩ�侊紝鍚庡垽鏂懠鍙綇瀹呮槸鍚︿负褰撳墠浣忓畢锛屼笉鏄殑璇濋噸鏂拌幏鍙朣IP璐﹀彿骞剁櫥褰�
         /// </summary>
         /// <param name="mESVideoInfo"></param>
         public void ShowESVideoIntercom(ESVideoInfo mESVideoInfo)
         {
+            InitLinphone();
+
             HDLCallVideoInfo mHDLCallVideoInfo = new HDLCallVideoInfo();
             mHDLCallVideoInfo.CallId = mESVideoInfo.callId;
             mHDLCallVideoInfo.HomeId = mESVideoInfo.HomeId;
@@ -356,15 +424,153 @@
             mHDLCallVideoInfo.DeviceSipAccount = mESVideoInfo.deviceSipAccount;
             InitCallInfo(mHDLCallVideoInfo);
 
+            //褰撳墠鍛煎彨鏉ョ數鐨勪綇瀹呭拰涔嬪墠娉ㄥ唽鐧诲綍鐨勪綇瀹呬竴鑷寸殑鎯呭喌涓�
+            if (currentHDLSipInfo != null && currentHDLSipInfo.homeId == mESVideoInfo.HomeId)
+            {
+                Utlis.WriteLine("CALL 鏀跺埌鎺ㄩ�� 鎺ㄩ�佷綇瀹呭拰涔嬪墠娉ㄥ唽鐧诲綍鐨勪綇瀹呬竴鑷�");
+                CheckCallStateAndGotoPage();
+            }
+            else
+            {
+                //娉ㄦ剰锛氫箣鍓嶆病鐧诲綍SIP璐﹀彿鎴栬�呬綇瀹呬笉涓�鑷寸殑鎯呭喌涓嬮渶瑕侀噸鏂拌幏鍙朣IP璐﹀彿
+                //鑾峰彇鍛煎彨浣忓畢鐨凷IP璐﹀彿骞剁櫥褰�
+                Utlis.WriteLine("CALL 鏀跺埌鎺ㄩ�� 鍏朵粬浣忓畢锛岄噸鏂拌幏鍙栧懠鍙綇瀹呯殑SIP璐﹀彿骞剁櫥褰�");
+                new Thread(() =>
+                {
+                    GetHDLSipInfoAndInitSDK(mESVideoInfo.HomeId);
+                })
+                { IsBackground = false }.Start();
+
+                //
+                CheckCallStateAndGotoPage();
+
+            }
+
+        }
+
+        /// <summary>
+        /// 妫�娴嬫潵鐢电姸鎬侊紝鍒ゆ柇鏄惁椹笂鎵撳紑鍛煎彨椤甸潰锛屽鏋滆繕娌℃潵鐢靛垯寮�鍚嚎绋嬫娴嬬瓑寰�
+        /// </summary>
+        /// <param name="mESVideoInfo"></param>
+        public void CheckCallStateAndGotoPage()
+        {
+            //濡傛灉寮�鍚簡鑷姩璺宠浆鏂规锛屽垯鏃犻渶缁х画涓嬮潰澶勭悊銆佹棤闇�鎵嬪姩璺宠浆
+            if (IsAutoJumpCallView) return;
+
+            //妫�娴嬫槸鍚︽潵鐢典簡濡傛灉鏄洿鎺ヨ皟鏁村懠鍙〉闈㈠鏋滀笉鏄垯寮�鍚嚎绋嬬瓑寰呭垽鏂�
+            if (IsIncomingReceivedCallState()) {
+                Utlis.WriteLine("CALL 宸茬粡鏉ョ數浜嗐�傘�傘�傛墦寮�鍛煎彨椤甸潰");
+                GoToHDLLinphoneIntercomActivity();
+            }
+            else
+            {
+                //濡傛灉杩樻病鏉ョ數 寮�鍚嚎绋嬫娴�
+                StartCheckIncomingCallThread();
+            }
+
+        }
+
+        /// <summary>
+        /// 鏄惁鏉ョ數鐘舵��
+        /// </summary>
+        /// <returns></returns>
+        bool IsIncomingReceivedCallState() {
 #if __IOS__
-               
+             return HDLLinPhoneSDK.Instance().IsIncomingReceivedCallState;
 #else
-            var intent = new Intent(Shared.Application.Activity, typeof(Com.Hdl.Hdllinphonesdk.Activity.HDLLinphoneIntercomActivity)); ;
-            intent.PutExtra(HDLLinphoneKit.KeyTitleName, mHDLCallVideoInfo.DeviceName);
+            return HDLLinphoneKit.Instance.IsIncomingReceivedCallState;
+#endif
+        }
+
+        /// <summary>
+        /// 璺宠浆鎵撳紑鍘熺敓鐨勫懠鍙〉闈�
+        /// </summary>
+        void GoToHDLLinphoneIntercomActivity() {
+
+#if __IOS__
+
+            HDLLinPhoneSDK.Instance().GotoHDLLinphoneIntercomVC(mHDLCallVideoInfo.DeviceName);
+
+#else
+            var intent = new Intent(Shared.Application.Activity, typeof(Com.Hdl.Hdllinphonesdk.Activity.HDLLinphoneIntercomActivity));
+            if (mHDLCallVideoInfo != null)
+            {
+                intent.PutExtra(HDLLinphoneKit.KeyTitleName, mHDLCallVideoInfo.DeviceName);
+            }
             Shared.Application.Activity.StartActivity(intent);
 #endif
 
         }
+
+
+        /// <summary>
+        /// 妫�娴嬫潵鐢电嚎绋�
+        /// </summary>
+        Thread checkIncomingCallThread = null;
+        /// <summary>
+        /// 绾跨▼缁撴潫
+        /// </summary>
+        int threadTime = 15;
+        /// <summary>
+        /// 寮�鍚娴嬫潵鐢电嚎绋�
+        /// </summary>
+        void StartCheckIncomingCallThread()
+        {
+            try
+            {
+                Utlis.WriteLine("CALL 杩樻病鏉ョ數锛屽紑鍚嚎绋�");
+                threadTime = 15;
+                //缁撴潫涔嬪墠鐨勭嚎绋�
+                EndCheckIncomingCallThread();
+                //鏂板缓绾跨▼
+                checkIncomingCallThread = new Thread(() =>
+                    {
+                        try
+                        {
+                            //15S鍚庤嚜鍔ㄧ粨鏉熺嚎绋�
+                            while (threadTime > 0)
+                            {
+                                threadTime--;
+                                Utlis.WriteLine("CALL 妫�娴嬩腑...." + threadTime);
+                                Thread.Sleep(1000);
+                                //鏉ョ數浜嗭紝璺宠浆鍛煎彨椤甸潰
+                                if (IsIncomingReceivedCallState())
+                                {
+                                    Utlis.WriteLine("CALL 鏉ョ數浜嗐�傘�傘�傛墦寮�鍛煎彨椤甸潰");
+                                    threadTime = 0;//璺冲嚭寰幆锛屽叧闂嚎绋�
+                                    Application.RunOnMainThread(() =>
+                                    {
+                                        GoToHDLLinphoneIntercomActivity();
+                                    });
+                                }
+                            }
+                          
+                          
+                        }
+                        catch { }
+                    });
+                //寮�鍚嚎绋�
+                checkIncomingCallThread.Start();
+            }
+            catch { }
+        }
+
+        /// <summary>
+        /// 缁撴潫绾跨▼
+        /// </summary>
+        void EndCheckIncomingCallThread()
+        {
+            if (checkIncomingCallThread != null)
+            {
+                try
+                {
+                    checkIncomingCallThread.Interrupt();
+                }
+                catch { }
+                checkIncomingCallThread = null;
+            }
+        }
+
         #endregion
 
 
@@ -390,36 +596,59 @@
             {
                 Toast.MakeText(Application.Activity, text, ToastLength.Short).Show();
             }
-
+            /// <summary>
+            /// 鎺ュ惉浜嬩欢
+            /// </summary>
             public void OnAnswerAction()
             {
-                showToast("鎺ュ惉");
+                //showToast("鎺ュ惉");
                 hdlLinphone.HDLUpdateCallStatus(CallStatusType.RECEIVED, InterphoneType.HDL);
             }
-
+            /// <summary>
+            /// 鎸傛柇浜嬩欢
+            /// </summary>
+            /// <param name="callDuration"></param>
             public void OnHangUpAction(int callDuration)
             {
 
-                showToast("鎸傛柇 閫氳瘽鏃堕暱锛�" + callDuration);
+                //showToast("鎸傛柇 閫氳瘽鏃堕暱锛�" + callDuration);
                 hdlLinphone.HDLUpdateCallStatus(CallStatusType.RECEIVED, InterphoneType.HDL, callDuration);
             }
 
+            /// <summary>
+            /// 鎷掓帴浜嬩欢
+            /// </summary>
             public void OnRejectCallAction()
             {
-                showToast("鎷掓帴");
+                //showToast("鎷掓帴");
                 hdlLinphone.HDLUpdateCallStatus(CallStatusType.REJECT, InterphoneType.HDL);
             }
 
-            public void OnScreenshotSuccessfulAction(Bitmap p0)
+            /// <summary>
+            /// 鎴浘鎴愬姛浜嬩欢
+            /// </summary>
+            /// <param name="p0"></param>
+            public void OnScreenshotSuccessfulAction(Bitmap imgBitmap)
             {
-                showToast("鎴浘鎴愬姛");
+                //showToast("鎴浘鎴愬姛");
             }
 
+            /// <summary>
+            /// 寮�閿佷簨浠�
+            /// </summary>
             public void OnUnlockAction()
             {
                 hdlLinphone.HDLUnlockAction();
             }
 
+            /// <summary>
+            /// 鏉ョ數浜嬩欢
+            /// </summary>
+            /// <param name="userName"></param>
+            public void OnIncomingCall(string userName)
+            {
+                Utlis.WriteLine("OnIncomingCall :" + userName);
+            }
         }
 
         /// <summary>
@@ -433,13 +662,101 @@
         /// <summary>
         /// 娓呮閫氱煡鏍忔墍鏈夐�氱煡
         /// </summary>
-        void CancelAllNotification() {
+        void CancelAllNotification()
+        {
             NotificationManager nMgr = (NotificationManager)Application.Activity.GetSystemService(Context.NotificationService);
             nMgr.CancelAll();
         }
 
 #endif
         #endregion
+
+        #region 鈻�  --  iOS鐩稿叧鎿嶄綔_______________________________
+
+#if __IOS__
+
+        #region OnHDLLinphoneCallDelegate
+        /// <summary>
+        /// 
+        /// </summary>
+        OnHDLLinphoneCallDelegate mOnHDLLinphoneCallDelegate;
+     
+        /// <summary>
+        /// 
+        /// </summary>
+        public class OnHDLLinphoneCallDelegate : HDLLinphoneCallDelegate
+        { 
+            [Weak] HDLLinphone hdlLinphone;
+
+            public OnHDLLinphoneCallDelegate(HDLLinphone mHDLLinphone)
+            {
+                this.hdlLinphone = mHDLLinphone;
+            }
+
+            /// <summary>
+            /// 鎺ュ惉
+            /// </summary>
+            public override void OnAnswerAction()
+            {
+                hdlLinphone.HDLUpdateCallStatus(CallStatusType.RECEIVED, InterphoneType.HDL);
+            }
+
+            /// <summary>
+            /// 鎸傛柇
+            /// </summary>
+            /// <param name="callDuration"></param>
+            public override void OnHangUpAction(int callDuration)
+            {
+                hdlLinphone.HDLUpdateCallStatus(CallStatusType.RECEIVED, InterphoneType.HDL, callDuration);
+            }
+
+            /// <summary>
+            /// 鎷掓帴
+            /// </summary>
+            public override void OnRejectCallAction()
+            {
+                hdlLinphone.HDLUpdateCallStatus(CallStatusType.REJECT, InterphoneType.HDL);
+            }
+
+            ///// <summary>
+            ///// 鎴浘鎴愬姛
+            ///// </summary>
+            ///// <param name="image"></param>
+            //public override void OnScreenshotSuccessfulAction(UIImage image)
+            //{
+            //    ////NSData imageData = UIImagePNGRepresentation(image); UIImage
+            //    //NSData imageData = image.AsPNG();
+            //    //byte[] dataBytes = new byte[imageData.Length];
+            //    //System.Runtime.InteropServices.Marshal.Copy(imageData.Bytes, dataBytes, 0, Convert.ToInt32(imageData.Length));
+            //    ////image.g
+            //    ////hdlLinphone.ScreenshotSuccessfulAction(dataBytes);
+            //}
+
+            /// <summary>
+            /// 寮�閿佹垚鍔�
+            /// </summary>
+            public override void OnUnlockAction()
+            {
+                hdlLinphone.HDLUnlockAction();
+            }
+
+            /// <summary>
+            /// 鏉ョ數涓�...
+            /// </summary>
+            public override void OnIncomingCall(string userName)
+            {
+                Utlis.WriteLine("OnIncomingCall :" + userName);
+            }
+            
+
+
+        }
+
+        #endregion
+#endif
+
+        #endregion
+
     }
 
     /// <summary>

--
Gitblit v1.8.0