uniApp webview 中调用底座蓝牙打印功能异常

背景:

使用uniApp, 安卓底座 + webView 方式开发;

调用方式采用H5 向 底座发送消息, 底座判断消息类型, 然后连接打印机进行打印;

内容通过指令集方式传递给打印机;

过程当中发现部分标签可以正常打印, 但又有部分不行,打印机没反应, 也没有报错;

原因分析:

对比标签内容发现不能打印的指令集内容当中包含了一些特殊符号

继续对打印的方法进行分析, 发现前面步骤都是正常的, 只是到了转码指令集这一步之后就没有执行了

继续对这句代码拆解, 并在浏览器中调试进行输出, 这个时候报错出现了

这里百分号没办法使用 decodeURIComponent 直接转码, 报错了

decodeURIComponent("0KΩ ± 1%25(0603)")

查找资料后发现 在MDN 上是有对这个报错的提示的, 应该不止是 百分号, 其他一些符号也会导致这个情况;

URIError: malformed URI sequence - JavaScript | MDN

这一篇里面有更多的一些介绍及解决方法: decodeURIComponent在解析浏览器参数中含有%时报错处理

解决办法:

  1. 在H5将内容发送给底座时先进行一次 encode;

  2. 编写通用方法, 对内容中的特殊字符进行替换;

相关推荐
我开心就好o5 小时前
uniapp点左上角返回键, 重复来回跳转的问题 解决方案
前端·javascript·uni-app
Random_index5 小时前
#Uniapp篇:支持纯血鸿蒙&发布&适配&UIUI
uni-app·harmonyos
初遇你时动了情13 小时前
uniapp 城市选择插件
开发语言·javascript·uni-app
小小黑00715 小时前
uniapp+vue3+ts H5端使用Quill富文本插件以及解决上传图片反显的问题
uni-app·vue
草字15 小时前
uniapp input限制输入负数,以及保留小数点两位.
java·前端·uni-app
前端小胡兔16 小时前
uniapp rpx兼容平板
uni-app
荔枝吖16 小时前
uniapp实现开发遇到过的问题(持续更新中....)
uni-app
艾小逗16 小时前
uniapp将图片url转换成base64支持app和h5
uni-app·base64·imagetobase64
halo141618 小时前
uni-app 界面TabBar中间大图标设置的两种方法
开发语言·javascript·uni-app
赣州云智科技的技术铺子2 天前
uni app下开发AI运动小程序解决方案
uni-app·ai运动·ai运动识别·运动识别引擎·uni ai运动解决方案·ai运动会·ai体测