Commit 6d6b0f52 authored by Steven杜宇's avatar Steven杜宇

// 版本更新

parent c23f1b7d
...@@ -272,27 +272,10 @@ extension YHHomePageViewController : UITabBarControllerDelegate { ...@@ -272,27 +272,10 @@ extension YHHomePageViewController : UITabBarControllerDelegate {
extension YHHomePageViewController { extension YHHomePageViewController {
func showNewVersionAlertView() { func showNewVersionAlertView() {
if let configModel = YHConfigManager.shared.reqVM.configModel, configModel.suggest_updating == true { let isNeedShowAlert = YHAppVersionManager.shared.needShowAlertViewOfSuggestVersionUpdate()
if isNeedShowAlert {
var isShow = false if let configModel = YHConfigManager.shared.reqVM.configModel {
if let alertLatestVersion = UserDefaults.standard.object(forKey: kShowAlertOfSuggestLatestVersion) as? String { let alertView = YHFindAppNewVersionView.alertView(version: configModel.max_version)
if !configModel.max_version.isEmpty, configModel.max_version != alertLatestVersion {
isShow = true
}
} else {
isShow = true
}
if isShow {
let alertView = YHFindAppNewVersionView.alertView(version: configModel.max_version).callBack(updateBlock: {
UserDefaults.standard.set(configModel.max_version, forKey: kShowAlertOfSuggestLatestVersion)
UserDefaults.standard.synchronize()
}, dismissBlock: {
UserDefaults.standard.set(configModel.max_version, forKey: kShowAlertOfSuggestLatestVersion)
UserDefaults.standard.synchronize()
})
let arr = configModel.suggest_updating_msg.components(separatedBy: "$") let arr = configModel.suggest_updating_msg.components(separatedBy: "$")
alertView.updateContentArray(arr) alertView.updateContentArray(arr)
alertView.show() alertView.show()
......
...@@ -28,6 +28,7 @@ class YHAppVersionManager { ...@@ -28,6 +28,7 @@ class YHAppVersionManager {
} }
} }
// 是否需要显示建议版本更新红点
func needShowRedPointOfSuggestVersionUpdate() -> Bool { func needShowRedPointOfSuggestVersionUpdate() -> Bool {
var isShowRedPoint = false var isShowRedPoint = false
...@@ -48,6 +49,21 @@ class YHAppVersionManager { ...@@ -48,6 +49,21 @@ class YHAppVersionManager {
return isShowRedPoint return isShowRedPoint
} }
// 是否需要显示建议版本更新弹窗
func needShowAlertViewOfSuggestVersionUpdate() -> Bool {
var isShow = false
if let configModel = YHConfigManager.shared.reqVM.configModel, configModel.suggest_updating == true {
if let alertLatestVersion = UserDefaults.standard.object(forKey: kShowAlertOfSuggestLatestVersion) as? String {
if !configModel.max_version.isEmpty, configModel.max_version != alertLatestVersion {
isShow = true
}
} else {
isShow = true
}
}
return isShow
}
func getCurrentDateSaveKey() -> String { func getCurrentDateSaveKey() -> String {
let format = DateFormatter() let format = DateFormatter()
format.dateFormat = "yyyy-MM-dd" format.dateFormat = "yyyy-MM-dd"
...@@ -55,8 +71,17 @@ class YHAppVersionManager { ...@@ -55,8 +71,17 @@ class YHAppVersionManager {
return todayString return todayString
} }
// 保存今天已显示建议版本更新红点本地日期数据 如果有建议更新每天只显示一次
func saveTodayShowSuggestVersionUpdateRedPoint() { func saveTodayShowSuggestVersionUpdateRedPoint() {
UserDefaults.standard.set(self.getCurrentDateSaveKey(), forKey: kShowRedPointOfSuggestLatestVersionDate) UserDefaults.standard.set(self.getCurrentDateSaveKey(), forKey: kShowRedPointOfSuggestLatestVersionDate)
UserDefaults.standard.synchronize() UserDefaults.standard.synchronize()
} }
// 保存显示过的最新建议升级弹窗的app版本
func saveShowLatestUpdateVersion () {
if let configModel = YHConfigManager.shared.reqVM.configModel {
UserDefaults.standard.set(configModel.max_version, forKey: kShowAlertOfSuggestLatestVersion)
UserDefaults.standard.synchronize()
}
}
} }
...@@ -65,9 +65,6 @@ class YHUpdateContentItemView: UIView { ...@@ -65,9 +65,6 @@ class YHUpdateContentItemView: UIView {
class YHFindAppNewVersionView: UIView { class YHFindAppNewVersionView: UIView {
var updateBlock: (()->())?
var dismissBlock: (()->())?
// 底层蒙版 // 底层蒙版
lazy var blackMaskView: UIView = { lazy var blackMaskView: UIView = {
let view = UIView() let view = UIView()
...@@ -141,7 +138,7 @@ class YHFindAppNewVersionView: UIView { ...@@ -141,7 +138,7 @@ class YHFindAppNewVersionView: UIView {
lazy var closeBtn:UIButton = { lazy var closeBtn:UIButton = {
let btn = UIButton() let btn = UIButton()
btn.setImage(UIImage(named: "update_close"), for: .normal) btn.setImage(UIImage(named: "update_close"), for: .normal)
btn.addTarget(self, action: #selector(dismiss), for: .touchUpInside) btn.addTarget(self, action: #selector(didCloseBtnClicked), for: .touchUpInside)
return btn return btn
}() }()
...@@ -160,12 +157,6 @@ class YHFindAppNewVersionView: UIView { ...@@ -160,12 +157,6 @@ class YHFindAppNewVersionView: UIView {
return alertView return alertView
} }
func callBack(updateBlock:(()->())?, dismissBlock:(()->())?) ->YHFindAppNewVersionView {
self.updateBlock = updateBlock
self.dismissBlock = dismissBlock
return self
}
func updateContentArray(_ arr: [String]) { func updateContentArray(_ arr: [String]) {
updateContentView.removeSubviews() updateContentView.removeSubviews()
updateContentView.snp.remakeConstraints { make in updateContentView.snp.remakeConstraints { make in
...@@ -280,12 +271,16 @@ class YHFindAppNewVersionView: UIView { ...@@ -280,12 +271,16 @@ class YHFindAppNewVersionView: UIView {
@objc func dismiss() { @objc func dismiss() {
YHLoginManager.shared.isShowVersionUpdate = false YHLoginManager.shared.isShowVersionUpdate = false
self.dismissBlock?()
self.removeFromSuperview() self.removeFromSuperview()
} }
@objc func didCloseBtnClicked() {
YHAppVersionManager.shared.saveShowLatestUpdateVersion()
dismiss()
}
@objc func didClickUpdateBtn() { @objc func didClickUpdateBtn() {
self.updateBlock?() YHAppVersionManager.shared.saveShowLatestUpdateVersion()
YHAppVersionManager.shared.goToAppStore() YHAppVersionManager.shared.goToAppStore()
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment