From cb9ed0b1da519bab3a536578a92db6f9d50c1b29 Mon Sep 17 00:00:00 2001 From: liub Date: Fri, 14 Nov 2025 17:28:20 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0102?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/4877/BJQ4877.js | 110 ++ manifest.json | 3 +- pages.json | 7 + pages/100/HBY100.vue | 3 +- pages/102/HBY102.vue | 1694 ++++++++++++++++++++++++++ pages/4877/BJQ4877CheckColor.vue | 310 +++++ pages/4877/BJQ4877V1.vue | 1596 ++++++++++++++++++++++++ pages/6155/deviceDetail.vue | 117 +- pages/common/addBLE/addEquip.vue | 4 +- static/images/102/line.png | Bin 0 -> 1040 bytes static/images/102/lineActive.png | Bin 0 -> 1282 bytes static/images/102/liting.png | Bin 0 -> 1100 bytes static/images/102/litingActive.png | Bin 0 -> 1384 bytes static/images/102/lowFlash.png | Bin 0 -> 1200 bytes static/images/102/lowFlashActive.png | Bin 0 -> 1486 bytes static/images/102/redar.png | Bin 0 -> 2131 bytes static/images/102/redarActive.png | Bin 0 -> 2778 bytes utils/BleHelper.js | 16 +- utils/BleReceive.js | 2 +- 19 files changed, 3786 insertions(+), 76 deletions(-) create mode 100644 api/4877/BJQ4877.js create mode 100644 pages/102/HBY102.vue create mode 100644 pages/4877/BJQ4877CheckColor.vue create mode 100644 pages/4877/BJQ4877V1.vue create mode 100644 static/images/102/line.png create mode 100644 static/images/102/lineActive.png create mode 100644 static/images/102/liting.png create mode 100644 static/images/102/litingActive.png create mode 100644 static/images/102/lowFlash.png create mode 100644 static/images/102/lowFlashActive.png create mode 100644 static/images/102/redar.png create mode 100644 static/images/102/redarActive.png diff --git a/api/4877/BJQ4877.js b/api/4877/BJQ4877.js new file mode 100644 index 0000000..b380f50 --- /dev/null +++ b/api/4877/BJQ4877.js @@ -0,0 +1,110 @@ +export const colors=[ + { + r: 255, + g: 0, + b: 0, + name: '红色', + hex: '#FF0000', + check: false, + id: 1 + }, + { + r: 0, + g: 0, + b: 255, + name: '蓝色', + hex: '#0000FF', + check: false, + id: 2 + }, + { + r: 0, + g: 255, + b: 0, + name: '绿色', + hex: '#00FF00', + check: false, + id: 3 + }, + { + r: 255, + g: 255, + b: 0, + name: '黄色', + hex: '#FFFF00', + check: false, + id: 4 + }, + { + r: 0, + g: 255, + b: 255, + name: '青色', + hex: '#00FFFF', + check: false, + id: 5 + }, + { + r: 255, + g: 0, + b: 255, + name: '紫红色', + hex: '#FF00FF', + check: false, + id: 6 + }, + { + r: 51, + g: 255, + b: 153, + name: '薄荷绿', + hex: '#33FF99', + check: false, + id: 7 + }, + { + r: 255, + g: 102, + b: 102, + name: '珊瑚红', + hex: '#FF6666', + check: false, + id: 8 + }, + { + r: 153, + g: 255, + b: 0, + name: '柠绿', + hex: '#99FF00', + check: false, + id: 9 + }, + { + r: 128, + g: 0, + b: 128, + name: '紫色', + hex: '#800080', + check: false, + id: 10 + }, + { + r: 204, + g: 102, + b: 255, + name: '淡紫', + hex: '#CC66FF', + check: false, + id: 11 + }, + { + r: 102, + g: 204, + b: 255, + name: '浅蓝', + hex: '#66CCFF', + check: false, + id: 12 + } +] \ No newline at end of file diff --git a/manifest.json b/manifest.json index 7255c9c..7fccadd 100644 --- a/manifest.json +++ b/manifest.json @@ -23,7 +23,8 @@ "Camera" : {}, "Geolocation" : {}, "Maps" : {}, - "Record" : {} + "Record" : {}, + "VideoPlayer" : {} }, /* 应用发布信息 */ "distribute" : { diff --git a/pages.json b/pages.json index ac5614a..017af96 100644 --- a/pages.json +++ b/pages.json @@ -347,6 +347,13 @@ { "navigationBarTitleText" : "选择配组" } + }, + { + "path" : "pages/102/HBY102", + "style" : + { + "navigationBarTitleText" : "HBY102" + } } diff --git a/pages/100/HBY100.vue b/pages/100/HBY100.vue index 9933740..2f0265d 100644 --- a/pages/100/HBY100.vue +++ b/pages/100/HBY100.vue @@ -1118,7 +1118,7 @@ let json = recei.ReceiveData(receive, device, pagePath, recArr); - // console.log("收到设备的数据", json) + console.log("收到设备的数据", json) let key = 'sta_VoiceDate'; if (key in json) { @@ -1126,6 +1126,7 @@ console.log("22222", val) if (val === 'start') { //开始发包 + console.log("开始发送数据"); updateLoading(these, { text: "开始发送" }); diff --git a/pages/102/HBY102.vue b/pages/102/HBY102.vue new file mode 100644 index 0000000..ec3b20e --- /dev/null +++ b/pages/102/HBY102.vue @@ -0,0 +1,1694 @@ + + + + + \ No newline at end of file diff --git a/pages/4877/BJQ4877CheckColor.vue b/pages/4877/BJQ4877CheckColor.vue new file mode 100644 index 0000000..c258f59 --- /dev/null +++ b/pages/4877/BJQ4877CheckColor.vue @@ -0,0 +1,310 @@ + + + + + \ No newline at end of file diff --git a/pages/4877/BJQ4877V1.vue b/pages/4877/BJQ4877V1.vue new file mode 100644 index 0000000..6b197bd --- /dev/null +++ b/pages/4877/BJQ4877V1.vue @@ -0,0 +1,1596 @@ + + + + + \ No newline at end of file diff --git a/pages/6155/deviceDetail.vue b/pages/6155/deviceDetail.vue index 80af6e5..b92c4f6 100644 --- a/pages/6155/deviceDetail.vue +++ b/pages/6155/deviceDetail.vue @@ -617,25 +617,26 @@ var processAndSendImageData = function(pixels) { return new Promise((resolve, reject) => { // 创建RGB565格式的像素数据 + // console.log("pixels=",pixels); const arr = ble.convertToRGB565(pixels, 'bgr'); - + var list = []; let index = 0; // 用于追踪arr的当前位置 - let packetSize = 2048; - let cSize = 248; + let packetSize = 3200; + let cSize = 200; // 外层循环:7个主要元素(i从1到7) - for (let i = 1; i < 8; i++) { + for (let i = 1; i < 9; i++) { let secondLevel = []; let secondCnt = 0; // 中层循环:每个主要元素包含9个子数组(j从1到9) - for (let j = 1; j < 10; j++) { + for (let j = 1; j < 9; j++) { // 确定当前子数组的长度:前8个是254,第9个是64 - + let thirdLevel = []; - + // 从arr中提取相应数量的元素 for (let k = 0; k < cSize && index < arr.length; k++) { - + if (secondCnt == packetSize) { break; } @@ -643,14 +644,14 @@ secondCnt++; index++; } - + secondLevel.push(thirdLevel); } list.push(secondLevel); } - + console.log("list=", list); - + let length = 0; for (let i = 0; i < list.length; i++) { const item = list[i]; @@ -660,8 +661,8 @@ console.log("第" + i + "包,第" + j + "小包,长度:" + element.length) length += element.length; clength += element.length; - - + + } } // 分包发送 @@ -675,118 +676,102 @@ var sendImagePackets = function(imageData) { return new Promise((resolve, reject) => { // 总数据包数 - const totalPackets = 7; + const totalPackets = 8; let currentPacket = 1; let childPacket = 1; - let totalChildPacket = 9; - - + let totalChildPacket = 8; + + // 发送单个数据包 const sendNextPacket = () => { if (currentPacket > totalPackets) { + updateLoading(these,{text:'发送完成,等待设备30秒'}); setTimeout(() => { hideLoading(these); these.Status.BottomMenu.show = false; - + these.showPop({ message: "上传成功", iconUrl: "/static/images/6155/DeviceDetail/uploadSuccess.png", borderColor: '#BBE600', buttonBgColor: '#BBE600' }); - + resolve(); - }, 20000) - + }, 0) + return; } - + var packetData = imageData[currentPacket - 1][childPacket - 1]; - // if (packetData.length == 0) { - // hideLoading(these); - // these.Status.BottomMenu.show = false; - - // these.showPop({ - // message: "上传成功", - // iconUrl: "/static/images/6155/DeviceDetail/uploadSuccess.png" - // }); - - // resolve(); - // return; - // } + console.log("childPacket=", childPacket); + console.log("packetData=", packetData); let start = 0; let bufferSize = packetData.length * 2; - - if (currentPacket == 7) { - if (childPacket > 2 && childPacket < 9) { - bufferSize = 496; - } else if (childPacket == 9) { - bufferSize = 128; - } - } - + + + if (childPacket == 1) { bufferSize = bufferSize + 8 start = 8; } - if (childPacket == 9) { //|| (currentPacket==7 && childPacket==3 + if (childPacket == 8) { //|| (currentPacket==7 && childPacket==3 bufferSize = bufferSize + 1 } - - - //FA 09 10 04 FC 09 [00] [01] + 4096字节+FF 数据格式 + + + //FA 09 0C 84 FB 09 00 [01~08] + 3200字节 +FF 数据格式 var buffer = new ArrayBuffer(bufferSize); var dataView = new DataView(buffer); if (childPacket == 1) { dataView.setUint8(0, 0xFA); // 帧头 dataView.setUint8(1, 0x09); // 帧头 - dataView.setUint8(2, 0x10); // 帧头 - dataView.setUint8(3, 0x04); // 帧头 - dataView.setUint8(4, 0xFC); // 帧头 - dataView.setUint8(5, 0x09); // 帧头 - - dataView.setUint8(6, 0x00); // 图序号,图片固定0,视频的话要写序号 - dataView.setUint8(7, currentPacket); //子包序号 + dataView.setUint8(2, 0x0C); // 帧头 + dataView.setUint8(3, 0x84); // 帧头 + dataView.setUint8(4, 0xFB); // 帧头 + dataView.setUint8(5, 0x09); + dataView.setUint8(6, 0x00); // 帧头 + dataView.setUint8(7, currentPacket); //包序号 } - + for (let i = 0; i < packetData.length; i++) { dataView.setUint16(start + i * 2, packetData[i], false); //本包数据,大端字节序 } console.log("packetData.length=", packetData.length); console.log("bufferSize=", bufferSize) - if (childPacket == 9) { // || (currentPacket==7 && childPacket==3 + if (childPacket == 8) { // || (currentPacket==7 && childPacket==3 dataView.setUint8(bufferSize - 1, 0xFF); } - + //发送数据包 ble.sendData(f.deviceId, buffer, f.writeServiceId, f.wirteCharactId, 30) .then(() => { - + let curr = childPacket + (currentPacket - 1) * totalChildPacket; console.log("第" + currentPacket + "大包,第" + childPacket + "小包发送完成,总计:" + curr); updateLoading(these, { - text: "正在发送" + curr + "/63" - + text: "正在发送" + curr + "/64" + }) - if (childPacket == 9) { + if (childPacket == 8) { currentPacket++; childPacket = 1; } else { childPacket++; } - + setTimeout(sendNextPacket, 100); }).catch(err => { if (err.code == 10007) { setTimeout(sendNextPacket, 100); return; } - + console.log("发送数据包失败了", err); - + these.Status.BottomMenu.show = false; these.showPop({ message: "发送数据包失败了" + err.msg, @@ -794,14 +779,14 @@ borderColor: "#e034344d", buttonBgColor: "#E03434", }); - + hideLoading(these); reject(err); }); } // 开始发送数据 sendNextPacket(); - + }); } diff --git a/pages/common/addBLE/addEquip.vue b/pages/common/addBLE/addEquip.vue index e5ae397..10d08c9 100644 --- a/pages/common/addBLE/addEquip.vue +++ b/pages/common/addBLE/addEquip.vue @@ -386,11 +386,11 @@ Promise.allSettled(promis).finally(() => { ble.StopSearch().finally(res => { - // console.log("停止搜索成功"); + console.log("停止搜索成功"); these.EquipMents = []; these.PairEquip = []; ble.StartSearch().then(result => { - // console.log("开始搜索成功"); + console.log("开始搜索成功"); }).catch(err => { console.error("开始搜索失败,err=", err); if (err.code === 10001) { diff --git a/static/images/102/line.png b/static/images/102/line.png new file mode 100644 index 0000000000000000000000000000000000000000..2e4ee749ddcd066f05e3db94e96ba815acc73879 GIT binary patch literal 1040 zcmeAS@N?(olHy`uVBq!ia0vp^W+2SL1|)l2v+go5Fkkm{aSW+oeEWcLf{N!P6;Gk= zRWom;0XwS?RMV z=X?V{^F78L)Bf8$Z=BDzFYJ=t|D6-w_Osf}`EPY!{pIE#=Ua3B3l`}9FO~Wr;VJyT za>Co?ALHLYRf&CK&%f!f$-mco=Pc>|^W1UU{A2Zdr%x`K_}}Klx641)e=nM(_h~-+ z%{r<7U*r5Px&HgCaNGa!{(GlAcb%x0OZlDo=X$lJr})qF%{lhH|Eu)XUoLtp&yx2j z{`qy4S~-0gxY^t4#dmbp&z(Qv3+J8!xY4)jm=oH?&uTN~^Z#jC;{Tx48Sa33*4z2) zHIg5MC)qWM^C27{nzLW_L+Sy4k6$ct76=D~Z}?kwU^=6{;!EL*hX~)rAN+QkF`kV~ z!#y3I?!V^kdFwfvG4%`;qW@mo_+EPbd40<7w+;HtbxxPmKO9oLt@rE7a9#AAyo@3sx^HSzN+qV0BKa3uztJE^-%RH**L{|LKe#+bJ%ywPr zw;9VCY!mv^e{*`qA1-$K!=LthaYO$j*57)b^N)W9^3y>McwAZAyJY>tpU!{u6Mpjo z9aOgCQMO7guf7Dx+K^V#l6SRAdNSKSyt zu_W-1_=dky2h5qd|9yVT_+I%R_lL_}BD5s^fpkHh+ftgY~*JFix~WCgA7#;`Kj(VNu-h{lWfo*Sr5SZQI`1&vH)+ g;#qm-eGlasbw1c#Ij3eW3e4#Yp00i_>zopr0JpO!1ONa4 literal 0 HcmV?d00001 diff --git a/static/images/102/lineActive.png b/static/images/102/lineActive.png new file mode 100644 index 0000000000000000000000000000000000000000..73f7cc9b3082174e7c1d9e4752dbffd60b7003b3 GIT binary patch literal 1282 zcmeAS@N?(olHy`uVBq!ia0vp^W+2SL1|)l2v+go5u$=UCaSW+oeEWcLf{N!P6;Gk= zRWom;0XwS?RN= z?hAip$?=~d-QN%1IZ-cGEdSx}+-n!-L(%-Fa8GGR@*a*kd$t{^_OAJU+otXN z!&YY$my6bY`nX5@*>2T+zjNgd|Nd}jA&O79?0;6=^X^szW+{_1&`nV_;lwHtmZ#AH&}nVey;kyx5FJw(&f8vXXgB+L%MbZC>i-(g zPy3-0$8azl7&Jd6=7~S5-!cCO`#oS_ROp$_|6HbjEdBEz#ed>IJ|6#gEpZ=rq0E72 z#rNJF{gD%A0J8EI|DKZ8`$jcqZ|{|uf0n!bNBooJ|GFOMe>QsaN#FU;{gxm4pN#z< z--`LTEpy#d`_3lo#`!hCyi1< z`c3kGi~Fwfmi=6B+VwvL=r_N_b06cmKhA#xj4#bImjAL9|4jxaG|N`YNf!s z!E%G=Ki0SY@c#ykGm&R9|F;VKKM4%eIfv#v-Y@pZ{w6Tcf@c)}x$g8w{rAb^#azXG z|D!r+Z20|8&r8zHESR+Zm%bDF&kD@HHMSoT|A-6L?E9hrVR8Mrjk_KgH!#8_x-%@=RMw) z1EqUq$(hLj0Lb8C-9c{Lz_qQ5BwXKkB(oC$66COM*CC6DB1LT~xI+amzWV64d#_Gs zG#bkfbAj*?dH*k>o=>gU^Aw|T&mLW~yX$tcx5TJNP9sQ}mq(V|H)&F7EBU2yfK8Lp zb>zpI=p{@)i9Xb{Q@P?6_HL(1)5`X@Q4hno!WrMpM6@pZ8@BT8yd9{e{lUj3bWune zo0+QtpTwO+o+$BH%v+90VpqEHC9FG#L3YPxF4BHk*gDp*HdIKo#v*PxeF{bgX0-(h zpEA+9gq^jvb~^&wbFzu~JdtLQtx&3hqn53M;xQ(bw9)pjZj~+Dd(i^;3=&TkTNiKc zE+ao>q*q0Uv1e0gkG*Y9TCjXlWI~sP&cwXmhNQ5gI;tj- zvjIU%i6Eh}7ipi%jeT9g+%)+UV(X!C!O=UxNJ?aV2h)sZ@maet|Cg31FKp8%hSOsS zOcagSLyjg|@3hH7ZqG@jLO zDlSF7p`i^Vrg52eYFw95sAy*wp*EX~jLfy8Bh?U%g!l3(t< z=iGD7z4Ee>g6N3&2pkR<&3c#l9{BGEA2obC7*AEk58-g3sVwG!_eCL(?IE2>tga+h zOvl%QV+BkmkHV4P1$?I6jK}H~R8e{*tn=A|1B0+aQ z)-<9PC%C1li`@!WojnT`{!qXOi0Ewg^!`K81d39txw^YA>h5`in*~` zs}dVYns~}5-FWJ)1b} ziaQQD2&toM0B{Q0JtMw7J07bxcWn1*z131vO}|}3FhNz*7n}PbrRlSI#cHDVNQ4bw z5^pXX2D7vKwC+3^T(NRqYCpFRJx$EnkZrMC;nGA2%#mlkQ~~y(WJsE5H2eZY3!9}4 zZ<)5{A#wCA_FN*n+2-bi`Ltj$I6~=MYv;PQZ?3L8*m~@%dyuT(t_$2dfb0QX=v(t0 zh_VrY;&uNZ%3)Wd)sYPI(MAGR2)d+Ne*-&w!~Q$#?y=kNiiU-vmn6#npqJyM0O#u- zY+*-07C{zujzP(zdZfp30q`I_0hv3r859j|)~ezeJ0@$2#IIs6$YpwS_4mD-;V^Ct zJ}B=VEUR65PJM!g{|?H+CZD%g3yXFiB>e(1{~Fp00!;hO{SXQ37X1XmR=HV{0DhOR zbIo~eOVA#ZpR3gP$;Hn(24ldOYjvmne#`K(lk-r6o_49~&u-z=0^R{bsGf?|qbq#! z)Rb2%gEN8`jk{agnt9vMKQnA^T+1K2M8NWcYDbCtx^?*pbDXJ#6!=s7=g$D5vGBA> W&fdyX#}~j0ieu%KFfZnCoBsg-6A7#U literal 0 HcmV?d00001 diff --git a/static/images/102/lowFlash.png b/static/images/102/lowFlash.png new file mode 100644 index 0000000000000000000000000000000000000000..52ab71a661311fe6b3e0607879ab2600f252f453 GIT binary patch literal 1200 zcmcIk|4$QV7{9ynrLDySH$`xv7%F6AQZ~jAMGmA|jtOk&M5eaQG$k3$N&>7M!@H|4 zFoap{a74>sE@Vsg1L(+@6S|fuVm9U_Wf_uY^eAzJn66jYXn||r-T6Q4N!~AclF#RP zp3f)m+xcddIzgH$g&-&aFIUy@=j*}}$MJjj;rIT8pcoUbDm`w7{S16Xf!h@Lwytll zkEvBEyFnEtM1{ z^Epgb^a(gkL-TcfZmO(^@+UA^lsc$g>~wkX{XT4m4>pj+><~A*QHl>dB456rH%C-5 zW9xz7yp8Au`^2sfU}C#j3=Z~h9ltsFfRx4PHuqYF|8mZ%-`J>&o=t~57(6Zmj%bD3 z6O@bQh+Njr(d=E@`%k>+9Dy=T;emw_#d$d(9YZhA#7f*3HUeuD^4bMMXqHx0{prY3y(ymN#iX z8QX@kTWqOH%Ae;7Ay%K37I2!O5-wYCF4dI{S)n1(=#THp@5Gy5W$Rr5oL9`^uVkhy z>R@11Vk3|e4%KZoQ6a_~NHibAf9L{wp}&;qBKP%RC>i`_AVq8@H`RJJ=zX}B$&>Vf zlUikT*BsHpe6(&2CHtIL{UM~d3z)}*t2L(h1~BgcpBhLpE8(Vg-6u0V#)P&#AlScK zfbC=(xT(z#gWl=2VG;TS`$OHy*Yu*{*P@GkBF!jL0}sTdM>}ps`d#&_#?W!*3&j~I5nOys9AHK)mC=@{I4s7K?;t^}+i&Neo2HkX zD`cMTIj`gu#(Ml}#JF`_%H}dVa}kq>jOS9>2HS}uWi)BB9q(y`?9=>D1mTCPR6~b! G7ybjcCVKGz literal 0 HcmV?d00001 diff --git a/static/images/102/lowFlashActive.png b/static/images/102/lowFlashActive.png new file mode 100644 index 0000000000000000000000000000000000000000..e4cd9fbecdd4483c136b003eaaba63b071265ef5 GIT binary patch literal 1486 zcmcJPYfuwc6vq=11ThfMBGgA#93Vv?;Mk`hnI@kgl2OLo&L)!!l+3>J{ zimM{>G^h;L>L6nu#wmfI38s`_O6!!i2-y&bkBZqPq8nItyGuXzbI;7)J3D9Y@0@%7 z|GAaBc1nDGmiVw(EZ?MU3A^b%hWWhb(d(J5hlg1#&zhu!5BDh86A1fUXwrqyq=lz% z)^|t}60)61-5^V!S*RLs6Ff@6+shRJ#EppIMG8qH%+08WE`yiw zzpw$~+2&IZAzz~&5mLpXM5QmfjV#iXxo>ET)~V_#WknDop^Dp9b@A{lQd;CX7-w6a zd4@x}R%qbn0uRymW3|P#2xzj_AXU~E15bJ&KV!bTUU=MakvNOk2w}9ibzb{aD(qNG z+Cv2Y!bpF`d@`39KA15z2b0nXAz%`*0W;JlQw^CWLkQCr@o&i_M|K7eBRAKH3WkF0 zwQjhSrFwjES|RWfU!VlZ4FZGI`tb%*xUqNE?N!SVRf2A zKM3e2qy>Sb^h$Gq4`0Sfc0lT1T@~8G*kqfPKRaf}qmaMd%{GJe%^f9&Qaz)a;j^7) ziU$&R;qlM#xACAmmRwACor8C1i`GQ;>VfHROnLW@mr!hOkkxUgX^aLL?T1Pbh!x*8 zER7&$t~M){edJH@vwqT^SaT8rU#GzK5*wG|c(3j1mu_MZy(UcCy&VM&)=s*?By#qb zG8mmAET~O3^GR1R4O*XUvmHfx3I47^0hY>tN*4=J zH!GJxTwOHPNirvIp#X{s z{!{S0En=ghOA2J;@-|mSFn-9W0A{`J-c$rON><0Rc@;w` zM9&a-N{E((WT@v-cr;S#hNt?g-DPs+IzI(lMK~31@3=~&KWc$SFI?F*m4)mZaka*d zZ3-bhK{sEwZZuadnRL2B&63WE(^#L51y1vi?8SPz%dwTwPr@;cY$jM$o)fS0rk(U^ zzOJQT;?Zu_KLWNZC-6h6*UPusJ@Eku`EixXSCL2lkl+*d;;6tdnD057`8-GSz%bOk zl-=&9t3$4rNm=Y#o}5Lo2-S0U&77Sw(H5#ZHIP;!mhy{ny1tBjDCbmAY(~ZR(f!2C z#EH>X>#MMW23+>W4w?ESHVY2BT(qx8}XwznJif zR(9dC*R&qK>dbMl0q0=WXF{?VK8L51_RB$3m1+`GhCA|cID9vKu-D}3t&1E5N79)e zA$ly-YJs8*DMqLTfL6k1AKKmgY&-z7zNEdrNG-vD_p0TAR6j#m<5-Qu`7*gNz6biw zIlDAQv{@j$cambo0B-s|gO$v6Fx_Ibu@14u6ON&{uLe2(R6K1r_wmMdyY*-B{&ZJ^ z6aTi!)1N9Oj37F)Fmu5XS9^#mKYj8MlNk3gQc)nL74NBOXOA>Ne|E-Xq6{2sqDiwa zLG(b2BByfjzIaKV$NDA5yvPT=7IP|L-lr2w#F1n`?zP-2^Go-d=y#fxv~_2~?JZd) F{{Z1|GLZlP literal 0 HcmV?d00001 diff --git a/static/images/102/redar.png b/static/images/102/redar.png new file mode 100644 index 0000000000000000000000000000000000000000..6b6f4f3180a5c5181e425559dbeac7b73dc87762 GIT binary patch literal 2131 zcmcImeM}Q~7`|&O6%k6Tj);ST^5NnJe>m(6r4>ZsRA4UKFcF0LLE|{B3u;@wT1Cg4 zb6}Ygrz^>ZOWLNn`~BYM zectDJes}8Q@{;&P$%_yKiN{KdKY`zM%x7T?e1Es;%O?o3Fc~W@{8WWfB-)vQ=`ye- zr+>LHR8m}AS6BD>XK*Q*>)%KJ$90(5y0Vg~QdhTmbMc9xix(D|x7AfDk0_NDW~St} zpZ%s-k49(@XN`r+z6oDU42#o4ilVtVT(i_2LsXQ`=7d&QLaWKk+I+3@++n_1WIx#- zyh2#LxND`e!mp?eWRXg>F?u)7!} zWKH-CZW6ecORn~v_2o&j#~KD≷d9U_Q!s&**5sqAqY*+hJed(rKufwj`SG(gIH3 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 { - // console.log('蓝牙状态发生变化:' + JSON.stringify(state)); + console.log('蓝牙状态发生变化:' + JSON.stringify(state)); this.data.discovering = state.discovering; if (this.data.available !== state.available) { @@ -632,18 +632,23 @@ class BleHelper { }, 0); }); + console.log("111111111") uni.onBluetoothDeviceFound((res) => { - // console.log("发现新设备:" + JSON.stringify(devices)); + // console.log("发现新设备:" + JSON.stringify(res,'name')); let arr = []; for (var i = 0; i < res.devices.length; i++) { let item = res.devices[i]; + if(item.name){ + console.log("发现新设备",item.name+" "+item.RSSI); + } + let f = serviceDic.find(v => { return item.advertisServiceUUIDs .includes(v.serviceId); }); if (f) { - console.log("发现新设备:", item); + console.log("发现目标设备:", item); arr.push(item); } @@ -788,7 +793,7 @@ class BleHelper { if (isUpdate) { this.updateCache(); } - // console.log("str1=", str); + console.log("str1=", str); } catch (ex) { console.error("将数据转文本失败", ex); } @@ -927,7 +932,7 @@ class BleHelper { services: serviceId ? [serviceId] : [], allowDuplicatesKey: true, success: (res) => { - //console.log('开始搜索蓝牙设备成功'); + console.log('开始搜索蓝牙设备成功'); resolve(res); }, @@ -1888,6 +1893,7 @@ class BleHelper { } + } let instance = null; diff --git a/utils/BleReceive.js b/utils/BleReceive.js index 6f558ac..81cd560 100644 --- a/utils/BleReceive.js +++ b/utils/BleReceive.js @@ -536,7 +536,7 @@ class BleReceive { try { - // console.log("str=",receive.str); + console.log("str=",receive.str); receiveData = JSON.parse(receive.str); let recCnt = recArr.find(v => {