index.vue 6.0 KB
Newer Older
DCloud-yyl's avatar
DCloud-yyl 已提交
1 2 3 4 5 6
<template>
	<view class="content">
		<image class="logo" src="/static/logo.png"></image>
		<view class="text-area">
			<text class="title">{{title}}</text>
		</view>
7
		<button @tap="testScreenShotListen">开启截屏监听</button>
8
		<button @tap="testScreenShotOff">关闭截屏监听</button>
9 10
		<button @tap="testSetUserCaptureScreen">{{setUserCaptureScreenText}}</button>
		
11 12 13
		<button @tap="testGetBatteryInfo">获取电池电量</button>
		<button @tap="testonMemoryWarning">开启内存不足告警监听</button>
		<button @tap="testoffMemoryWarning">关闭内存不足告警监听</button>
14
		
打打卡夫卡's avatar
打打卡夫卡 已提交
15
		<button @tap="testStartWifi">初始化wifi模块</button>
杜庆泉's avatar
杜庆泉 已提交
16 17
		<button @tap="testGetWifiList">获取当前wifi列表</button>
		<button @tap="testGetConnnectWifi">获取当前连接的wifi</button>
杜庆泉's avatar
杜庆泉 已提交
18
		<button @tap="testConnnectWifi">链接wifi</button>
打打卡夫卡's avatar
打打卡夫卡 已提交
19
		<button @tap="testStopWifi">关闭wifi模块</button>
DCloud-yyl's avatar
DCloud-yyl 已提交
20 21 22 23
	</view>
</template>

<script>
24

DCloud-yyl's avatar
DCloud-yyl 已提交
25 26 27
	export default {
		data() {
			return {
杜庆泉's avatar
杜庆泉 已提交
28 29
				title: 'Hello',
				memListener:null,
30
				setUserCaptureScreenFlag: false,
31 32
				setUserCaptureScreenText: '禁止截屏',
				permissionGranted: false
DCloud-yyl's avatar
DCloud-yyl 已提交
33 34 35 36 37 38
			}
		},
		onLoad() {

		},
		methods: {
杜庆泉's avatar
杜庆泉 已提交
39 40 41
			onMemoryWarning:function(res){
				console.log(res);
			},
杜庆泉's avatar
杜庆泉 已提交
42
			testConnnectWifi(){
杜庆泉's avatar
杜庆泉 已提交
43 44

				uni.connectWifi({
45
					maunal:false,
杜庆泉's avatar
杜庆泉 已提交
46
					SSID:"Xiaomi_20D0",
47
					password:"BBBB",
杜庆泉's avatar
杜庆泉 已提交
48 49 50 51
					complete:(res)=>{
						console.log(res);
					}
				});
52
				
杜庆泉's avatar
杜庆泉 已提交
53
			},
杜庆泉's avatar
杜庆泉 已提交
54
			testGetConnnectWifi(){
55
				uni.getConnectedWifi({
杜庆泉's avatar
杜庆泉 已提交
56 57 58
					partialInfo:false,
					complete:(res)=>{
						console.log(res);
59 60 61 62 63 64 65 66 67 68 69 70
						if (res.errCode == 0) {
							uni.showToast({
								icon:'none',
								title:res.wifi.SSID
							})
						} else{
							uni.showToast({
								icon:'none',
								title:res.errMsg
							})
						}
						
杜庆泉's avatar
杜庆泉 已提交
71
					}
杜庆泉's avatar
杜庆泉 已提交
72 73 74 75 76 77
				});
			},
			testStartWifi(){
				uni.startWifi({
					success:(res)=> {
						console.log("success: " + JSON.stringify(res));
78
						// wifi 开启成功后,注册wifi链接状态监听和wifi列表获取监听
杜庆泉's avatar
杜庆泉 已提交
79
						uni.onGetWifiList(function(res){
80
							console.log("onGetWifiList");
杜庆泉's avatar
杜庆泉 已提交
81 82
							console.log(res);
						});
杜庆泉's avatar
杜庆泉 已提交
83
						uni.onWifiConnected(function(res){
84 85
							console.log("onWifiConnected");
							console.log(res);
杜庆泉's avatar
杜庆泉 已提交
86
						});
杜庆泉's avatar
杜庆泉 已提交
87 88 89 90
						uni.onWifiConnectedWithPartialInfo(function(res){
							console.log("onWifiConnectedWithPartialInfo");
							console.log(res);
						});
杜庆泉's avatar
杜庆泉 已提交
91
						
杜庆泉's avatar
杜庆泉 已提交
92 93 94 95
					},fail:(res)=>{
						console.log("fail: " + JSON.stringify(res));
					},complete:(res)=>{
						console.log("complete: " + JSON.stringify(res));
96 97 98
					}
				})
			},
杜庆泉's avatar
杜庆泉 已提交
99 100 101 102 103 104 105 106 107
			testStopWifi() {
				uni.stopWifi({
					success:(res)=> {
						console.log("success: " + JSON.stringify(res));
					},fail:(res)=>{
						console.log("fail: " + JSON.stringify(res));
					},complete:(res)=>{
						console.log("complete: " + JSON.stringify(res));
					}
108
				})
杜庆泉's avatar
杜庆泉 已提交
109
				
110
			},
杜庆泉's avatar
杜庆泉 已提交
111 112 113 114 115 116 117 118 119
			testGetWifiList() {
				uni.getWifiList({
					success:(res)=> {
						console.log("success: " + JSON.stringify(res));
					},fail:(res)=>{
						console.log("fail: " + JSON.stringify(res));
					},complete:(res)=>{
						console.log("complete: " + JSON.stringify(res));
					}
120
				})
杜庆泉's avatar
杜庆泉 已提交
121 122 123 124
				
			},
			testonMemoryWarning() {
				uni.onMemoryWarning(this.onMemoryWarning)
125 126 127 128
				uni.showToast({
					icon:'none',
					title:'已监听,注意控制台输出'
				})
杜庆泉's avatar
杜庆泉 已提交
129 130
			},
			testoffMemoryWarning(){
131 132 133 134 135
				uni.offMemoryWarning(this.onMemoryWarning)
				uni.showToast({
					icon:'none',
					title:'监听已移除'
				})
136
			},
137 138 139 140 141 142 143
			testScreenShotListen() {
				var that = this;
				uni.onUserCaptureScreen(function(res) {
						console.log(res);
						
						if (uni.getSystemInfoSync().platform == "android") {
							// 除android 之外的平台,不需要判断返回状态码
杜庆泉's avatar
杜庆泉 已提交
144
							if(res.errCode == -1){
145
								// 启动失败
146
								that.permissionGranted = true;
147
								return ;
杜庆泉's avatar
杜庆泉 已提交
148
							}else if(res.errCode == 0){
149 150 151 152 153 154 155 156 157 158 159 160 161
								uni.showToast({
									icon:"none",
									title:'捕获截屏事件'
								})
								that.screenImage = res.image
							}
						}else{
							// 除android 之外的平台,不需要判断返回状态码
							uni.showToast({
								icon:"none",
								title:'捕获截屏事件'
							})
						}
162
				});
163
					
164
				if (uni.getSystemInfoSync().platform != "android" || that.permissionGranted) {
165 166 167 168 169 170
					// 除android 之外的平台,直接提示监听已开启
					uni.showToast({
						icon:"none",
						title:'截屏监听已开启'
					})
				}
171 172 173 174 175 176 177 178 179 180 181 182 183 184
			},
			testScreenShotOff() {
				uni.offUserCaptureScreen(function(res) {
						console.log(res);
				});
				// 提示已经开始监听,注意观察
				uni.showToast({
					icon:"none",
					title:'截屏监听已关闭'
				})
			},
			testGetBatteryInfo() {
				uni.getBatteryInfo({
					success(res) {
185
						console.log(res);
186 187 188 189 190 191 192
						uni.showToast({
							title: "当前电量:" + res.level + '%',
							icon: 'none'
						});
					}
				})
			},
193 194 195
			testSetUserCaptureScreen() {
				let flag = this.setUserCaptureScreenFlag;
				uni.setUserCaptureScreen({
196
					enable: flag,
197
					success: (res) => {
198
						console.log("setUserCaptureScreen enable: " + flag + " success: " + JSON.stringify(res));
199 200
					},
					fail: (res) => {
201
						console.log("setUserCaptureScreen enable: " + flag + " fail: " + JSON.stringify(res));
202 203
					},
					complete: (res) => {
204
						console.log("setUserCaptureScreen enable: " + flag + " complete: " + JSON.stringify(res));
205 206 207 208 209 210 211 212 213
					}
				});
				uni.showToast({
					icon:"none",
					title: this.setUserCaptureScreenText
				});
				this.setUserCaptureScreenFlag = !this.setUserCaptureScreenFlag;
				if (this.setUserCaptureScreenFlag) {
					this.setUserCaptureScreenText = '允许截屏';
214 215
				} else {
					this.setUserCaptureScreenText = '禁止截屏';
216 217
				}
			},
DCloud-yyl's avatar
DCloud-yyl 已提交
218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248
		}
	}
</script>

<style>
	.content {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}

	.logo {
		height: 200rpx;
		width: 200rpx;
		margin-top: 200rpx;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 50rpx;
	}

	.text-area {
		display: flex;
		justify-content: center;
	}

	.title {
		font-size: 36rpx;
		color: #8f8f94;
	}
</style>