| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- import Util from "../../../before/util/Util";
- import JsbSystem from "../../../mk/system/JsbSystem";
- import { UpdateState } from "../../data/AppData";
- import { AUDIO_TYPE } from "../../data/GameData";
- /** 最新版本下载 */
- const { ccclass, property } = cc._decorator;
- @ccclass
- export default class ForceUpdate extends cc.Component {
- @property(cc.Label)
- labUpdate: cc.Label = null
- @property(cc.Label)
- labFix: cc.Label = null
- @property(cc.Node)
- btnSure: cc.Node = null
- @property(cc.Node)
- btnCancel: cc.Node = null
- @property(cc.Sprite)
- fileProgress: cc.Sprite = null
- @property(cc.Label)
- labPro: cc.Label = null
- start() {
- this.setText()
- }
- clickDownLoad() {
- mk.audio.playEffect("ef_button_click")
- this.btnSure.active = false
- this.btnCancel.active = false
- this.fileProgress.node.parent.active = true
- let apkUrl = gData.appData.installUrl
- let arr = apkUrl.split('/')
- let apkName = arr[arr.length - 1]
- console.log('apkName ', apkName)
- let installUrl = apkName.replace('.apk', '');
- if (JsbSystem.isFileExist(installUrl)) {
- console.log('installUrl ', installUrl)
- //已下载过
- JsbSystem.installApk(installUrl);
- return null;
- }
- //未下载过
- JsbSystem.downFile2Local(apkUrl, apkName,
- (locaPath) => {
- setTimeout(() => {
- JsbSystem.installApk(installUrl)
- }, 1)
- },
- (locaPath) => {
- let str = '下载失败,请检查网络后重试'
- mk.tip.pop(str);
- this.fileProgress.node.parent.active = false
- this.fileProgress.fillRange = 0
- this.labPro.string = '0%'
- this.btnSure.active = true
- this.btnCancel.active = true
- },
- (bytesReceived, totalBytesReceived, totalBytesExpected) => {
- let pro = totalBytesReceived / totalBytesExpected
- this.setPro(pro)
- })
- }
- //更新进度
- setPro(pro) {
- this.labPro.string = `${Math.floor(pro * 100)}%`
- this.fileProgress.fillRange = pro
- }
- clickSkip() {
- mk.audio.playEffect(AUDIO_TYPE.button)
- mk.ui.closePanel(this.node.name);
- gData.appData.updateState = UpdateState.ForceUpdateFinish;
- }
- /** 设置文本 */
- setText() {
- this.labUpdate.string = gData.appData.updateDes;
- this.labFix.string = gData.appData.fixDes;
- }
- }
|