android h5链接蓝牙,h5+runtime Native.js 混合APP连接蓝牙打印机
自己摸索了一下,并参考其他人的代码,修复了原来代码存在的问题,
问题1:字符串的getBytes函数,返回null【需要通过new的方式创建字符串】
问题2:初始化打印一次,之后无法使用【不要重复调用device.createInsecureRfcommSocketToServiceRecord(uuid)或重复引入CLASS】
代码如下,可正常运行【注意,蓝牙打印机必须先匹配,保证手机蓝牙打开】
mui.plusReady(function() {
main = plus.android.runtimeMainActivity();
BluetoothAdapter = plus.android.importClass("android.bluetooth.BluetoothAdapter");
UUID = plus.android.importClass("java.util.UUID");
uuid = UUID.fromString("00001101-0000-1000-8000-00805F9B34FB");//不需要更改
BAdapter = BluetoothAdapter.getDefaultAdapter();
BAdapter.cancelDiscovery(); //停止扫描
device = BAdapter.getRemoteDevice("DC:1D:30:25:19:23");//这里是蓝牙打印机的蓝牙地址
plus.android.importClass(device);
bluetoothSocket = device.createInsecureRfcommSocketToServiceRecord(uuid);
plus.android.importClass(bluetoothSocket);
});
function print() {
if(!bluetoothSocket.isConnected()) {
console.log('断开了,需要重新连接,连接中');
bluetoothSocket.connect();
}
if(bluetoothSocket.isConnected()) {
console.log('连接成功');
var outputStream = bluetoothSocket.getOutputStream();
plus.android.importClass(outputStream);
var s = plus.android.importClass('java.lang.String');
var string = new s("测试数据"+new Date().getMilliseconds()+'\n\n\n\n');//必须以创建字符串对象的形式创建对象,否则返回NULL
var bytes = string.getBytes('gbk');
console.log(bytes);
outputStream.write(bytes);
outputStream.flush();
} else {
console.log('fail');
}
}
至于打印的内容和格式,请参考各自打印机提供的打印指令集,把它拼成字符串调用getBytes函数即可打印。
android h5链接蓝牙,h5+runtime Native.js 混合APP连接蓝牙打印机相关推荐
- android获取网卡ip地址吗,Native.js获取android有线网络IP地址
刚上手Native.js 请教问题如下: 想通过Native.js 获取Android有线网络IP地址,提示这一行console.log(en.hasMoreElements());报错: Uncau ...
- app连接蓝牙打印机实现打印并排版
做项目的时候遇到需要连接打印机打印小票的情况,因为从未接触过这方面的东西,就在网上下载了一个demo,demo地址:http://blog.csdn.net/reality_jie_blog/arti ...
- win10链接无线打印服务器,老司机调解win10系统连接无线打印机的方法介绍
也许大家在用电脑工作的使用中会遇到win10系统连接无线打印机的情况,目前就有很多朋友向我资讯关于win10系统连接无线打印机的具体处理步骤.因此我就在电脑上整顿出win10系统连接无线打印机的解决办 ...
- uni-app H5+ 连接蓝牙打印机打印文字及二维码
基于Native.js 实现的连接蓝牙打印机 打印效果图 核心代码 测试代码 运行设备及环境 PS: PPS: Demo 打印效果图 核心代码 /*** @Description: 蓝牙打印类 基于h ...
- 微信小程序跳转h5链接(web-view)
微信小程序跳转h5链接通常使用web-view当容器,来打开h5链接 1.了解web-view以及功能 支持能力: web-view是从基础库 1.6.4 开始支持,低版本需做兼容处理.web-vie ...
- vue.runtime.esm.js?2b0e:619 [Vue warn]: Error in created hook: “TypeError: Object(...) is not a func
前几天一个月薪35k的兄弟,给我推了一个人工智能学习网站,看了一段时间挺有意思的.包括语音识别.机器翻译等从基础到实战都有,很详细,分享给大家. 从后端拿取数据渲染到表格数据.结果明明写的没错,但是却 ...
- Arduino连接蓝牙(HC-05)
目录 前言 一.USB-TTL直接连接电脑 二. Arduino 连接蓝牙模块 三.常见AT指令 总结 前言 设置蓝牙模块进入AT模式的方式有两种: 1.可以使用 USB-TTL 连接电脑使用串口调试 ...
- 蓝牙模块(HC-05)与手机连接,蓝牙与蓝牙互联,电脑通过蓝牙控制单片机
任务一:蓝牙与手机连接 所用模块: HC-05蓝牙模块,USB TO TTL手机APP为SPP蓝牙串口 第一章:蓝牙模块配置 一:HC-05与USB TO TTL连接 EN:为使能引脚,一般不接 VC ...
- android与h5交互设计,H5与native交互之JSBridge
JSBridge 1. Why do we need JSBridge? 2. Why is "JS"Bridge? 3. What is JSBridge? Why do ...
最新文章
- LNMP环境搭建(一)搭建PHP环境
- 写代码如坐禅:你是哪一类程序员?
- Repeating Decimals (计算循环小数)
- 程序员的噩梦,你遇到过哪几条?
- HTML基础入门学习准备篇
- YOLOv4 | 用C++ 和OpenCV 实现视频目标检测
- html含有一级子元素,html – 根据父级内的计数设置子元素
- 【Java web 项目】医院药品管理系统
- dev万能头文件_【C++】Dev-C++的“万能头文件”真的万能吗?
- hrbust/哈理工oj 1475国王的宴会【树型dp】
- Word技能-更改 Normal 模板 (Normal.dotm)
- 大龄程序员的一些出路
- Flutter 吐司弹框的使用 showToast弹框(插件)
- 如何学习云计算这一文就够了!
- 【京东】商品详情页采集
- Mysql 认证步骤
- 分治算法,逆序对,三维偏序与CDQ分治
- 维修工程师,比你想象的要赚钱
- html如何用ajax连杰和苏局哭,ajax的探究与使用
- 面向对象的特性——继承
热门文章
- centos 下安装mysql
- 6个原则、50条秘技提高HTML5应用及网站性能
- C++ :stringstream介绍,使用方法与例子(转)
- WinCE的网络驱动实现原理
- 【报告分享】阿里达摩院:2022十大科技趋势.pdf(附下载链接)
- 基于知识图谱的推荐系统总结
- 机器学习-1-.py文件的导入问题
- 厂均 60W+ 的 秘密
- spm on mysql_Announcement: MySQL Performance Monitoring in SPM_MySQL
- 2020跨境电商独立站将喷发式增长?