index.vue 6.6 KB
Newer Older
DCloud-yyl's avatar
DCloud-yyl 已提交
1 2
<template>
	<view class="content">
杜庆泉's avatar
杜庆泉 已提交
3 4 5 6 7 8 9 10 11

		
		<button @tap="testStartWifi" style="width: 100%;">初始化wifi模块</button>
		<button @tap="testGetWifiList" style="width: 100%;">获取当前wifi列表</button>
		<button @tap="testOffGetWifiList" style="width: 100%;">移除wifi列表监听</button>
		<button @tap="testGetConnnectWifi" style="width: 100%;">获取当前连接的wifi</button>
		<button @tap="testConnnectWifi" style="width: 100%;">链接wifi</button>
		<button @tap="testStopWifi" style="width: 100%;">关闭wifi模块</button>
		
杜庆泉's avatar
杜庆泉 已提交
12 13
		<button @tap="onGetWifiList2_assert0" style="width: 100%;">onGetWifiList2_assert0</button>
		
14
		<button @tap="testScreenShotListen">开启截屏监听</button>
15
		<button @tap="testScreenShotOff">关闭截屏监听</button>
16 17
		<button @tap="testSetUserCaptureScreen">{{setUserCaptureScreenText}}</button>
		
18 19 20
		<button @tap="testGetBatteryInfo">获取电池电量</button>
		<button @tap="testonMemoryWarning">开启内存不足告警监听</button>
		<button @tap="testoffMemoryWarning">关闭内存不足告警监听</button>
21
		
杜庆泉's avatar
杜庆泉 已提交
22
		
DCloud-yyl's avatar
DCloud-yyl 已提交
23 24 25 26
	</view>
</template>

<script>
27

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

		},
		methods: {
杜庆泉's avatar
杜庆泉 已提交
41 42 43
			onMemoryWarning:function(res){
				console.log(res);
			},
杜庆泉's avatar
杜庆泉 已提交
44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
			fn:function(res){
				console.log(res)
			},
			onGetWifiList2_assert0() {
							const fn = res => console.log('onGetWifiList res', res)
							uni.startWifi({success(){
								uni.onGetWifiList(fn)
								uni.getWifiList({
									success() {
										console.log('getWifiList success');
										uni.offGetWifiList(fn)
										uni.stopWifi({
											success() {},
											fail(e) {
												console.log("stopWifi fail: ",e);
											}
										})
									}
								})
							}})
						},
						
杜庆泉's avatar
杜庆泉 已提交
66
			testConnnectWifi(){
杜庆泉's avatar
杜庆泉 已提交
67 68 69 70
				
				uni.startWifi({
					success:(res)=> {
						console.log("success: " + JSON.stringify(res));
杜庆泉's avatar
杜庆泉 已提交
71 72 73 74 75 76 77 78
						// uni.connectWifi({
						// 	maunal:false,
						// 	SSID:"Xiaomi_20D0",
						// 	password:"BBB111",
						// 	complete:(res)=>{
						// 		console.log(res);
						// 	}
						// });
杜庆泉's avatar
杜庆泉 已提交
79 80 81 82
					},fail:(res)=>{
						console.log("fail: " + JSON.stringify(res));
					},complete:(res)=>{
						console.log("complete: " + JSON.stringify(res));
杜庆泉's avatar
杜庆泉 已提交
83
					}
杜庆泉's avatar
杜庆泉 已提交
84 85 86
				})

				
87
				
杜庆泉's avatar
杜庆泉 已提交
88
			},
杜庆泉's avatar
杜庆泉 已提交
89
			testGetConnnectWifi(){
90
				uni.getConnectedWifi({
杜庆泉's avatar
杜庆泉 已提交
91 92 93
					partialInfo:false,
					complete:(res)=>{
						console.log(res);
94 95 96 97 98 99 100 101 102 103 104 105
						if (res.errCode == 0) {
							uni.showToast({
								icon:'none',
								title:res.wifi.SSID
							})
						} else{
							uni.showToast({
								icon:'none',
								title:res.errMsg
							})
						}
						
杜庆泉's avatar
杜庆泉 已提交
106
					}
杜庆泉's avatar
杜庆泉 已提交
107 108 109 110 111 112
				});
			},
			testStartWifi(){
				uni.startWifi({
					success:(res)=> {
						console.log("success: " + JSON.stringify(res));
113
						// wifi 开启成功后,注册wifi链接状态监听和wifi列表获取监听
杜庆泉's avatar
杜庆泉 已提交
114
						uni.onGetWifiList(function(res){
115
							console.log("onGetWifiList");
杜庆泉's avatar
杜庆泉 已提交
116 117
							console.log(res);
						});
杜庆泉's avatar
杜庆泉 已提交
118
						uni.onWifiConnected(function(res){
119 120
							console.log("onWifiConnected");
							console.log(res);
杜庆泉's avatar
杜庆泉 已提交
121
						});
杜庆泉's avatar
杜庆泉 已提交
122 123 124 125
						uni.onWifiConnectedWithPartialInfo(function(res){
							console.log("onWifiConnectedWithPartialInfo");
							console.log(res);
						});
杜庆泉's avatar
杜庆泉 已提交
126
						
杜庆泉's avatar
杜庆泉 已提交
127 128 129 130
					},fail:(res)=>{
						console.log("fail: " + JSON.stringify(res));
					},complete:(res)=>{
						console.log("complete: " + JSON.stringify(res));
131 132 133
					}
				})
			},
杜庆泉's avatar
杜庆泉 已提交
134
			testStopWifi() {
杜庆泉's avatar
杜庆泉 已提交
135 136 137
				uni.offWifiConnected()
				uni.offWifiConnectedWithPartialInfo()
				
杜庆泉's avatar
杜庆泉 已提交
138 139 140 141 142 143 144 145
				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));
					}
146
				})
杜庆泉's avatar
杜庆泉 已提交
147
				
148
			},
杜庆泉's avatar
杜庆泉 已提交
149 150 151 152 153 154 155 156 157
			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));
					}
158
				})
杜庆泉's avatar
杜庆泉 已提交
159 160
				
			},
杜庆泉's avatar
杜庆泉 已提交
161 162 163 164 165 166 167
			
			testOffGetWifiList(){
				uni.offGetWifiList()
			},
			
	
			
杜庆泉's avatar
杜庆泉 已提交
168 169
			testonMemoryWarning() {
				uni.onMemoryWarning(this.onMemoryWarning)
170 171 172 173
				uni.showToast({
					icon:'none',
					title:'已监听,注意控制台输出'
				})
杜庆泉's avatar
杜庆泉 已提交
174 175
			},
			testoffMemoryWarning(){
176 177 178 179 180
				uni.offMemoryWarning(this.onMemoryWarning)
				uni.showToast({
					icon:'none',
					title:'监听已移除'
				})
181
			},
182 183 184 185
			testScreenShotListen() {
				var that = this;
				uni.onUserCaptureScreen(function(res) {
						console.log(res);
186 187 188 189 190
						uni.showToast({
							icon:"none",
							title:'捕获截屏事件'
						})
						that.screenImage = res.path
191
				});
192
					
193
				if (uni.getSystemInfoSync().platform != "android" || that.permissionGranted) {
194 195 196 197 198 199
					// 除android 之外的平台,直接提示监听已开启
					uni.showToast({
						icon:"none",
						title:'截屏监听已开启'
					})
				}
200 201 202 203 204 205 206 207 208 209 210 211 212 213
			},
			testScreenShotOff() {
				uni.offUserCaptureScreen(function(res) {
						console.log(res);
				});
				// 提示已经开始监听,注意观察
				uni.showToast({
					icon:"none",
					title:'截屏监听已关闭'
				})
			},
			testGetBatteryInfo() {
				uni.getBatteryInfo({
					success(res) {
214
						console.log(res);
215 216 217 218 219 220 221
						uni.showToast({
							title: "当前电量:" + res.level + '%',
							icon: 'none'
						});
					}
				})
			},
222 223 224
			testSetUserCaptureScreen() {
				let flag = this.setUserCaptureScreenFlag;
				uni.setUserCaptureScreen({
225
					enable: flag,
226
					success: (res) => {
227
						console.log("setUserCaptureScreen enable: " + flag + " success: " + JSON.stringify(res));
228 229
					},
					fail: (res) => {
230
						console.log("setUserCaptureScreen enable: " + flag + " fail: " + JSON.stringify(res));
231 232
					},
					complete: (res) => {
233
						console.log("setUserCaptureScreen enable: " + flag + " complete: " + JSON.stringify(res));
234 235 236 237 238 239 240 241 242
					}
				});
				uni.showToast({
					icon:"none",
					title: this.setUserCaptureScreenText
				});
				this.setUserCaptureScreenFlag = !this.setUserCaptureScreenFlag;
				if (this.setUserCaptureScreenFlag) {
					this.setUserCaptureScreenText = '允许截屏';
243 244
				} else {
					this.setUserCaptureScreenText = '禁止截屏';
245 246
				}
			},
DCloud-yyl's avatar
DCloud-yyl 已提交
247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277
		}
	}
</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>