// // SBTFeedbackVCtr.swift // SolarBT // // Created by weclouds on 2019/4/22. // Copyright © 2019 weclouds. All rights reserved. // import UIKit import SwiftyJSON import Alamofire import PPNetworkHelper import CryptoSwift import WebKit import PKHUD let NOTIFICTIONCHANGEFEEDBACKURL = "NOTIFICTIONCHANGEFEEDBACKURL" class SBTFeedbackVCtr: UIViewController { var webView:WKWebView? /*****************/ var mFirmwareInfo : FirmwareinInfo? var status :String? var filePath :String? var newFireware :String? var dataSource :[String]? = [String]() lazy var tableView: UITableView = { let tableview = UITableView(frame: CGRect(x: 0, y: 0, width: KSCREENWIDTH, height: KSCREENHEIGHT - KNavBarHeight), style: .plain) tableview.delegate = self tableview.dataSource = self return tableview }() /******************/ override func viewDidLoad() { super.viewDidLoad() checkTheBlueToothWasActivity() title = "Customer_feedback".da_localizedStr() setUPWKWebView() NotificationCenter.default.addObserver(self, selector: #selector(reloadURL), name: NSNotification.Name(NOTIFICTIONCHANGEFEEDBACKURL), object: nil) } override func touchesBegan(_ touches: Set, with event: UIEvent?) { } } //extension SBTFeedbackVCtr{ // func notificationRegister() { // NotificationCenter.default.addObserver(self, selector: #selector(changeLanguage), name: NSNotification.Name(KCHANGELANGUAGE), object: nil) // } // // func notificationUnRegister() { // // NotificationCenter.default.removeObserver(self) // } // // @objc func changeLanguage() { // // // log.debug("执行了 -- changeLanguage \(DAConfig.currentLanguage())") // self.title = "Customer_feedback".da_localizedStr() // // // } //} extension SBTFeedbackVCtr{ func getCurrentLanguage() -> String { let preferredLang = Bundle.main.preferredLocalizations.first! as NSString switch String(describing: preferredLang) { case "en-US", "en-CN": return "en"//英文 case "zh-Hans-US","zh-Hans-CN","zh-Hant-CN","zh-TW","zh-HK","zh-Hans": return "cn"//中文 default: return "en" } } func setUPWKWebView() { var url = URL(string: "http://www.szshuori.com") let userdef = UserDefaults.standard let langueage = userdef.object(forKey: "SOLARLANGUAGE") as? String log.debug("当前语言。---- \(langueage)") if langueage == nil || langueage == "0" { DAConfig.userLanguage = nil //跟随系统 if getCurrentLanguage() == "cn"{ url = URL(string: "http://www.szshuori.com") }else{ url = URL(string: "https://www.srnesolar.com/") } }else{ if langueage == "1"{ url = URL(string: "http://www.szshuori.com") }else{ url = URL(string: "https://www.srnesolar.com/") } } let webConfiguration = WKWebViewConfiguration() webView = WKWebView(frame: CGRect(x: 0, y: 0, width: KSCREENWIDTH, height: KSCREENHEIGHT - KNavBarHeight), configuration: webConfiguration) webView?.navigationDelegate = self let request = URLRequest(url: url!) webView!.load(request) view.addSubview(webView!) } @objc func reloadURL() { var url = URL(string: "http://www.szshuori.com") let userdef = UserDefaults.standard let langueage = userdef.object(forKey: "SOLARLANGUAGE") as? String if langueage == nil || langueage == "0" { DAConfig.userLanguage = nil //跟随系统 if getCurrentLanguage() == "cn"{ url = URL(string: "http://www.szshuori.com") }else{ url = URL(string: "https://www.srnesolar.com/") } }else{ if langueage == "1"{ url = URL(string: "http://www.szshuori.com") }else{ url = URL(string: "https://www.srnesolar.com/") } } let request = URLRequest(url: url!) webView!.load(request) } } extension SBTFeedbackVCtr : WKNavigationDelegate { // TODO: 决定导航的动作,通常处理跨域连接能否导航。 // 页面开始加载时调用 func webView(_ webView: WKWebView, didStartProvisionalNavigation navigation: WKNavigation!){ log.debug(" 页面开始加载时调用") HUD.flash(.progress) } // 当内容开始返回时调用 func webView(_ webView: WKWebView, didCommit navigation: WKNavigation!){ log.debug(" 当内容开始返回时调用") HUD.flash(.progress) } // 页面加载完成之后调用 func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!){ log.debug("页面加载完成之后调用") /// 获取网页title HUD.flash(.success, delay: 1.0) } // 页面加载失败时调用 func webView(_ webView: WKWebView, didFail navigation: WKNavigation!, withError error: Error){ /// 弹出提示框点击确定返回 HUD.flash(.error, delay: 2) } } extension SBTFeedbackVCtr:UITableViewDelegate,UITableViewDataSource{ func _______createUI() { let barbutton = UIBarButtonItem(barButtonSystemItem: .done, target: self, action: #selector(sendBeginCMD)) self.navigationItem.rightBarButtonItem = barbutton self.view.addSubview(tableView) } @objc func sendBeginCMD() { //FF10043800020400000060F41E let arr = ["FF10043800020400000000"] //发送数据 let marr = NSMutableArray() for i in 0.. Int { return dataSource!.count } func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { var cell = tableView.dequeueReusableCell(withIdentifier: "cell") if cell == nil { cell = UITableViewCell(style: .default, reuseIdentifier: "cell") } cell?.textLabel?.text = "开始发送第\(indexPath.row)包数据..." return cell! } //0.001s func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { // 一包数据 let perPack = dataSource![indexPath.row] //蓝牙数据包 let BLEDataPackCount = perPack.count / 40 log.debug("蓝牙数据包 --- \(BLEDataPackCount)") for i in 0..