import confige from '@/config/app.js'
import {getAppVersion} from '@/api/api.js'
const iosAppStroeUrl =
	'https://apps.apple.com/cn/app/%E6%BB%A1%E5%9B%AD%E6%98%A5%E7%BA%BF%E4%B8%8A%E5%95%86%E5%9F%8E/id1524593346';

// 获取app是否需要升级
export function getUpApp () {
	// 获取当前运行系统
	let hj = uni.getSystemInfoSync().platform;
	// 获取仓库app数据对象
	// let app = store.state.isShowIllegality;
	// 当前系统为安卓则显示数据
	if (hj === 'android') {
		// 设置默认显示数据
		// app = true;
		// store.commit('changeState', {
		// 	name: 'app',
		// 	value: app
		// });
	}
	console.log('开始升级');
	getAppVersion().then((res)=>{
		console.log(res,'回调');
			let r = res.data;
			plus.runtime.getProperty(plus.runtime.appid, function(wgtinfo) {
				console.log(r.version,'获取版本');
				// 保存线上版本号
				let version = r.version;
				// 获取线上版本
				const arr = r.version.split('.');
				// 获取当前系统
				const arr1 = wgtinfo.version.split('.');
				console.log(version,'升级数据2');
				console.log(arr,'升级数据3');
				console.log(arr1,'升级数据4');
				let up = false;
				
				for (let i = 0; i < arr.length; i++) {
					// 线上版本号
					const x = +arr[i];
					// 线下版本号
					const y = +arr1[i];
					// 判断当前版本是否为小于等于线上版本
					console.log(x,y,'循环');
					if (x >= y) {
						// 只有ios才需要显示
						// if (hj === 'ios') {
						// 	// 设置显示数据
						// 	// app = true;
						// 	// store.commit('changeState', {
						// 	// 	name: 'app',
						// 	// 	value: app
						// 	// });
						// }
						// 当版本较低时更新数据
						console.log(x,y);
						if(up==true){
							return;
						}
						if (x > y) {
							up = true;
							uni.showModal({
								title: '提示',
								content: '请更新应用',
								showCancel: false,
								success(e) {
									// if (hj === 'ios') {
									// 	plus.runtime.openURL(
									// 		iosAppStroeUrl
									// 	);
									// }
									if (hj === 'android') {
										// plus.runtime.openURL('http://lxscimg.liuniu946.com/lxscV' + version + '.apk');
										console.log(r.apk,'下載地址');
										downApp(r.apk);
									}
								}
							});
						}
						
					}
				}
			});
	}).catch((res)=>{
		console.log(res);
	})
}
// 下载app
export function downApp (version) {
	let url = '';
	if(version.indexOf('http')>-1){
		url = version;
	}else{
		url = confige.HTTP_REQUEST_URL+version
	}
	console.log(url);
	plus.nativeUI.showWaiting('下载升级包...');
	plus.downloader
		.createDownload(url, {}, (d, status) => {
			if (status == 200) {
				installApp(d.filename); // 安装app
			} else {
				plus.nativeUI.alert('下载升级包失败！');
			}
			plus.nativeUI.closeWaiting();
		})
		.start();
}
// 安装app
export function installApp (path) {
	plus.nativeUI.showWaiting('安装升级包...');
	plus.runtime.install(
		path, {},
		function() {
			plus.nativeUI.closeWaiting();
			uni.showToast({
				icon: 'none',
				title: '升级完成，准备重新载入'
			});
			setTimeout(_ => {
				uni.hideToast();
				plus.runtime.restart();
			}, 1000);
		},
		function(e) {
			plus.nativeUI.closeWaiting();
			plus.nativeUI.alert('安装升级包失败[' + e.code + ']：' + e.message);
		}
	);
}
