| | |
| | | using HDL_ON.Entity; |
| | | using System.Threading; |
| | | using HDL_ON.DriverLayer; |
| | | using System.Collections.Generic; |
| | | |
| | | namespace HDL_ON |
| | | { |
| | | /// <summary> |
| | |
| | | /// </summary> |
| | | public void CheckIfNeedForceUpdate() |
| | | { |
| | | System.Threading.Tasks.Task.Run(() => |
| | | { |
| | | try |
| | | { |
| | | var revertObj = new HttpServerRequest().CheckAppVersion(); |
| | | if (revertObj.Code == StateCode.SUCCESS) |
| | | { |
| | | if (revertObj.Data != null) |
| | | { |
| | | var appVersionRes = Newtonsoft.Json.JsonConvert.DeserializeObject<AppVersionResNew>(revertObj.Data.ToString()); |
| | | if (appVersionRes != null) |
| | | { |
| | | |
| | | var mForceUpdateInfo = new UpdateDialogInfo() |
| | | { |
| | | UpdateType = appVersionRes.isEnforce ? 2 : 1, |
| | | NewVersion = appVersionRes.version, |
| | | NewVersionUrl = appVersionRes.packageUrl |
| | | }; |
| | | #if __IOS__ |
| | | mForceUpdateInfo.NewVersionUrl = appVersionRes.packageUrl; |
| | | #endif |
| | | //解析更新内容详情 |
| | | //var reasonStrJson = GetReasonStrJson(appVersionRes.remark); |
| | | //if (reasonStrJson != null) |
| | | //{ |
| | | // if (Language.CurrentLanguage == "Chinese") |
| | | // { |
| | | // mForceUpdateInfo.ReasonStr = reasonStrJson.Chinese; |
| | | // } |
| | | // else |
| | | // { |
| | | // mForceUpdateInfo.ReasonStr = reasonStrJson.English; |
| | | // } |
| | | //} |
| | | mForceUpdateInfo.ReasonStr = appVersionRes.remark; |
| | | |
| | | if (appVersionRes.version != MainPage.VersionString) |
| | | { |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | ShowForceUpdateDialog(mForceUpdateInfo); |
| | | }); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | else |
| | | { |
| | | Utlis.WriteLine("请求失败"); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | //Shared.Utlis.WriteLine (ex.ToString ()); |
| | | } |
| | | finally |
| | | { |
| | | |
| | | } |
| | | |
| | | }); |
| | | |
| | | } |
| | | |
| | |
| | | /// </summary> |
| | | public void ShowForceUpdateDialog(UpdateDialogInfo mUpdateDialogInfo) |
| | | { |
| | | // 1.1 没有更新 返回 |
| | | if (mUpdateDialogInfo.UpdateType == 0) return; |
| | | // 1.2 有新版本但是忽略过 返回 |
| | | if (mUpdateDialogInfo.UpdateType == 1 && (OnAppConfig.Instance.IgnoreUpdateVersion == mUpdateDialogInfo.NewVersion)) return; |
| | | // 2.1 有新版本没有忽略过 提示更新 |
| | | if (mUpdateDialogInfo.UpdateType == 1) |
| | | { |
| | | Action okAction = () => |
| | | { |
| | | if (string.IsNullOrEmpty(mUpdateDialogInfo.NewVersionUrl)) return; |
| | | |
| | | HDLUtils.OpenUrl(mUpdateDialogInfo.NewVersionUrl); |
| | | }; |
| | | |
| | | Action cancelAction = () => |
| | | { |
| | | OnAppConfig.Instance.IgnoreUpdateVersion = mUpdateDialogInfo.NewVersion; |
| | | OnAppConfig.Instance.SaveConfig(); |
| | | }; |
| | | |
| | | //1提示更新 |
| | | var dialog = new UpdateTipDialog(); |
| | | var tipStr = Language.StringByID(StringId.VersionNumber) + mUpdateDialogInfo.NewVersion; |
| | | dialog.ShowUpdateDialog(Language.StringByID(StringId.DiscoverNewVersion), tipStr, mUpdateDialogInfo.ReasonStr, okAction, cancelAction); |
| | | |
| | | } |
| | | else if (mUpdateDialogInfo.UpdateType == 2) //2.2 需要强制更新 |
| | | { |
| | | //2强制更新 |
| | | //"1.发现新版本App,当前版本已停用,马上更新!\n2.请下载和安装新版本!....." |
| | | Action okAction = () => |
| | | { |
| | | if (string.IsNullOrEmpty(mUpdateDialogInfo.NewVersionUrl)) |
| | | { |
| | | Utlis.ShowTip(Language.StringByID(StringId.DataExceptionPleaseTryAgain)); |
| | | return; |
| | | }; |
| | | |
| | | HDLUtils.OpenUrl(mUpdateDialogInfo.NewVersionUrl); |
| | | }; |
| | | |
| | | //1提示更新 |
| | | var dialog = new UpdateTipDialog(); |
| | | var tipStr = Language.StringByID(StringId.VersionNumber) + mUpdateDialogInfo.NewVersion; |
| | | dialog.ShowForcedUpdateDialog(Language.StringByID(StringId.DiscoverNewVersion), tipStr, mUpdateDialogInfo.ReasonStr, okAction); |
| | | } |
| | | else //3. 只需提示 |
| | | { |
| | | //3提示通知 |
| | | Action okAction = () => |
| | | { |
| | | |
| | | }; |
| | | var dialog = new UpdateTipDialog(); |
| | | dialog.ShowTipDialog(Language.StringByID(StringId.Tip), mUpdateDialogInfo.ReasonStr, okAction); |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | |
| | | //报警推送弹窗提示 |
| | | ShowAlarmPushMessage(jpushMessageInfo, true); |
| | | //萤石门锁推送 |
| | | //HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.DoorLockPush(jpushMessageInfo); |
| | | HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.DoorLockPush(jpushMessageInfo); |
| | | } |
| | | //else if (jpushMessageInfo.messageType == (PushMessageType.FLCall.ToString())) |
| | | //{ |
| | |
| | | { |
| | | ShowAlarmPushMessage(jpushMessageInfo, false); |
| | | //萤石门锁推送 |
| | | //HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.DoorLockPush(jpushMessageInfo); |
| | | HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.DoorLockPush(jpushMessageInfo); |
| | | } |
| | | //else if (jpushMessageInfo.messageType == (PushMessageType.DOOR_BELL.ToString())) |
| | | //{ |
| | | // //萤石门锁推送 |
| | | // //HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.DoorLockPush(jpushMessageInfo); |
| | | //} |
| | | else if (jpushMessageInfo.messageType == (PushMessageType.DOOR_BELL.ToString())) |
| | | { |
| | | //萤石门锁推送 |
| | | HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.DoorLockPush(jpushMessageInfo); |
| | | } |
| | | |
| | | |
| | | } |
| | |
| | | public void CheckLogout() |
| | | { |
| | | #if __IOS__ |
| | | try{ |
| | | try |
| | | { |
| | | HDL_ON_iOS.AppDelegate.rootViewController.PopToRootViewController(false); |
| | | }catch(Exception ex){ |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | MainPage.Log($"回到跟类失败:{ex.Message}"); |
| | | } |
| | | #else |
| | |
| | | string strValue = list[i]; |
| | | nSObject[i] = new Foundation.NSString(strValue); |
| | | } |
| | | try |
| | | { |
| | | EZSDK.IOS.EZSDK.SharedInstance().ToEZDeviceListViewWithFilterTypes(nSObject); |
| | | }catch(Exception x) |
| | | { |
| | | MainPage.Log("Error", x.Message); |
| | | } |
| | | |
| | | |
| | | |
| | | #else |
| | |
| | | } |
| | | else |
| | | { |
| | | if (result.Code != "-1") |
| | | IMessageCommon.Current.ShowErrorInfoAlter(result.Code); |
| | | } |
| | | } |