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

// 版本更新

parent c23f1b7d
......@@ -272,27 +272,10 @@ extension YHHomePageViewController : UITabBarControllerDelegate {
extension YHHomePageViewController {
func showNewVersionAlertView() {
if let configModel = YHConfigManager.shared.reqVM.configModel, configModel.suggest_updating == true {
var isShow = false
if let alertLatestVersion = UserDefaults.standard.object(forKey: kShowAlertOfSuggestLatestVersion) as? String {
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 isNeedShowAlert = YHAppVersionManager.shared.needShowAlertViewOfSuggestVersionUpdate()
if isNeedShowAlert {
if let configModel = YHConfigManager.shared.reqVM.configModel {
let alertView = YHFindAppNewVersionView.alertView(version: configModel.max_version)
let arr = configModel.suggest_updating_msg.components(separatedBy: "$")
alertView.updateContentArray(arr)
alertView.show()
......
......@@ -28,6 +28,7 @@ class YHAppVersionManager {
}
}
// 是否需要显示建议版本更新红点
func needShowRedPointOfSuggestVersionUpdate() -> Bool {
var isShowRedPoint = false
......@@ -48,6 +49,21 @@ class YHAppVersionManager {
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 {
let format = DateFormatter()
format.dateFormat = "yyyy-MM-dd"
......@@ -55,8 +71,17 @@ class YHAppVersionManager {
return todayString
}
// 保存今天已显示建议版本更新红点本地日期数据 如果有建议更新每天只显示一次
func saveTodayShowSuggestVersionUpdateRedPoint() {
UserDefaults.standard.set(self.getCurrentDateSaveKey(), forKey: kShowRedPointOfSuggestLatestVersionDate)
UserDefaults.standard.synchronize()
}
// 保存显示过的最新建议升级弹窗的app版本
func saveShowLatestUpdateVersion () {
if let configModel = YHConfigManager.shared.reqVM.configModel {
UserDefaults.standard.set(configModel.max_version, forKey: kShowAlertOfSuggestLatestVersion)
UserDefaults.standard.synchronize()
}
}
}
......@@ -64,9 +64,6 @@ class YHUpdateContentItemView: UIView {
}
class YHFindAppNewVersionView: UIView {
var updateBlock: (()->())?
var dismissBlock: (()->())?
// 底层蒙版
lazy var blackMaskView: UIView = {
......@@ -141,7 +138,7 @@ class YHFindAppNewVersionView: UIView {
lazy var closeBtn:UIButton = {
let btn = UIButton()
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
}()
......@@ -160,12 +157,6 @@ class YHFindAppNewVersionView: UIView {
return alertView
}
func callBack(updateBlock:(()->())?, dismissBlock:(()->())?) ->YHFindAppNewVersionView {
self.updateBlock = updateBlock
self.dismissBlock = dismissBlock
return self
}
func updateContentArray(_ arr: [String]) {
updateContentView.removeSubviews()
updateContentView.snp.remakeConstraints { make in
......@@ -280,12 +271,16 @@ class YHFindAppNewVersionView: UIView {
@objc func dismiss() {
YHLoginManager.shared.isShowVersionUpdate = false
self.dismissBlock?()
self.removeFromSuperview()
}
@objc func didCloseBtnClicked() {
YHAppVersionManager.shared.saveShowLatestUpdateVersion()
dismiss()
}
@objc func didClickUpdateBtn() {
self.updateBlock?()
YHAppVersionManager.shared.saveShowLatestUpdateVersion()
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