更新记录

1.0.0(2025-02-25)

1.0.0 (2025-01-08)

  • 初始化项目
  • 增加安卓API支持

平台兼容性

Vue2 Vue3
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序
Android:4.4,iOS:不支持,HarmonyNext:不支持 × × × × × ×
钉钉小程序 快手小程序 飞书小程序 京东小程序 鸿蒙元服务
× × × × ×
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari
× × × × × × × × ×

bsf-avocado

bsf-avocado 是一款专为成都极数蓝牙打印SDK定制的UTS插件。

文档 | Demo

平台

  • Android

兼容性

  • uniapp
  • uniappx

使用说明

引入插件

import * as Location from "@uni_modules/bsf-avocado";

初始化SDK

const result = AvocadoSDK.initSDK("9ZWI3PGTRIJE");

检测权限

if (!AvocadoSDK.checkPermission()) {
    AvocadoSDK.requestPermission({
        onPermit: () => {
            console.log("权限获取成功");
        },
        onRefuse: () => {
            console.log("权限被拒绝");
        }
    });
} else {
    console.log("已具备所需权限");
}

搜索设备

AvocadoSDK.discover({
    onDiscoveryStarted: () => {
        console.log("开始搜索设备");
    },
    onDeviceFound: (device) => {
        console.log(`发现设备: ${device.name || '未知设备'}`);
    },
    onDiscoveryStopped: () => {
        console.log("停止搜索设备");
    }
});

停止搜索

AvocadoSDK.stopDiscovery();

连接设备

AvocadoSDK.connectDevice({
    address: device.address,
    onConnect: (success) => {
        this.isConnected = success;
        console.log(`设备连接${success ? '成功' : '失败'}`);
    }
});

断开连接

AvocadoSDK.disconnectDevice();

获取设备状态

AvocadoSDK.getDeviceStatus({
    onResponse: (response) => {
        console.log(`设备状态: ${response}`);
    },
    onErrorResponse: (errorCode) => {
        console.log(`获取设备状态错误: ${errorCode}`);
    }
});

获取设备信息

AvocadoSDK.getDeviceInfo({
    onResponse: (response) => {
        console.log(`设备信息: ${response}`);
    },
    onErrorResponse: (errorCode) => {
        console.log(`获取设备信息错误: ${errorCode}`);
    }
});

获取混合状态

AvocadoSDK.getMixedStatus({
    onResponse: (response) => {
        console.log(`混合状态: ${response}`);
    },
    onErrorResponse: (errorCode) => {
        console.log(`获取混合状态错误: ${errorCode}`);
    }
});

发送打印任务

AvocadoSDK.printJob({
    tempPath: filePath[0].path,
    copies: 1,
    isFirmUpdata: false,
    onCreateJobSuccess: (jobId) => { 
        console.log(`创建打印任务成功,任务ID: ${jobId}`);
    },
    onCreateJobFail: (errorCode, errorReason) => {
        console.log(`创建打印任务失败: ${errorReason}`);
    },
    Change: (max, current, jobId) => {
        console.log(`打印进度: ${current}/${max}`);
    },
    onTransferCompleted: (jobId) => {
        console.log(`任务${jobId}传输完成`);
    },
    onResponse: (response) => {
        console.log(`打印响应: ${response}`);
    },
    onErrorResponse: (errorCode) => {
        console.log(`打印错误: ${errorCode}`);
    }
});

取消任务

AvocadoSDK.getJobInfo(this.currentJobId, {
    onResponse: (response) => {
        console.log(`任务信息: ${response}`);
    },
    onErrorResponse: (errorCode) => {
        console.log(`获取任务信息错误: ${errorCode}`);
    }
});

获取任务信息

AvocadoSDK.getJobInfo(this.currentJobId, {
    onResponse: (response) => {
        console.log(`任务信息: ${response}`);
    },
    onErrorResponse: (errorCode) => {
        console.log(`获取任务信息错误: ${errorCode}`);
    }
});

恢复任务

AvocadoSDK.resume({
    onResponse: (response) => {
        console.log(`恢复任务成功`);
    },
    onErrorResponse: (errorCode) => {
        console.log(`恢复任务错误: ${errorCode}`);
    }
});

清理设备

AvocadoSDK.clean({
    onResponse: (response) => {
        console.log(`清理设备成功`);
    },
    onErrorResponse: (errorCode) => {
        console.log(`清理设备错误: ${errorCode}`);
    }
});

隐私、权限声明

1. 本插件需要申请的系统权限列表:

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <uses-permission android:name="android.permission.BLUETOOTH" android:maxSdkVersion="30" /> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" android:maxSdkVersion="30" /> <uses-permission android:name="android.permission.BLUETOOTH_SCAN" android:usesPermissionFlags="neverForLocation" tools:targetApi="S" /> <uses-permission android:name="android.permission.BLUETOOTH_ADVERTISE" /> <uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件不采集任何数据

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问