uniapp实现 在android 设备上 打印一张图片!
·
1.android封装的一个aar插件里有一个接口,传递byte数据进行打印。那么需要对数据进行封装。
相比时间来看,直接在android插件上处理掉这些,提供一个接口,传递文件路径,进行打印。
2.指定的路径进行打印。
调用后出现问题,获取文件元数据失败,CODE 15
固定路径android 10是不支持的。
async printImg() {
const plugin = uni.requireNativePlugin('bluetooth-plugin');
// 第一步:获取static目录下的文件路径
// 假设你要打印的是static目录下的example.png文件
const staticFilePath = '_www/static/example.png'; // 注意:static文件在打包后会位于_www/static目录下
// 第二步:把static文件拷贝到沙盒路径
plus.io.resolveLocalFileSystemURL(staticFilePath, (entry) => {
plus.io.requestFileSystem(plus.io.PRIVATE_DOC, (fs) => {
const newFileName = `print_${Date.now()}.png`;
entry.copyTo(fs.root, newFileName, (newEntry) => {
const newPath = newEntry.fullPath;
console.log('沙盒路径:', newPath);
// 第三步:调用插件打印
plugin.printImageByPath(newPath, (res) => {
if (res.success) {
console.log('打印成功:', res.message);
} else {
console.error('打印失败:', res.error);
}
});
}, (err) => {
console.error('拷贝文件失败:', err);
});
}, (err) => {
console.error('无法访问沙盒路径:', err);
});
}, (err) => {
console.error('无法解析static文件路径:', err);
});
},
3.打印会带黑边。
是图片存在问题。拿到图片。
4
更多推荐



所有评论(0)