uniapp-开发APP使用自定义插件
需求背景: 项目组开发了一个APP需要使用到打印机的功能、所以需要通过打印机厂商提供的jdk包结合自己的业务融合到uniapp 中。
- 首先你需要一个懂开发android开发的同事、让他帮忙配合写一些调用方法(调用打印机提供的一些原生方法、例如打印、连接蓝牙、蓝牙搜索等)。
其他的就需要你在项目中自己写。
uniapp项目
(1)首先需要在根目录创建一个nativeplugins目录用于存放项目中使用到的自定义插件(自己开发的插件)。目录结构如下:
这里因为我们的APP只用于安卓设备、所以这个插件TTPrint也只有一个android 子目录、如果需要兼容IOS则需要多创建一个ios的子目录。目录下是
package.json 文件内容:
{
"name": "TTPrint",
"id": "TTPrint",
"version": "1.0.0",
"description": "打印插件",
"_dp_type":"nativeplugin",
"_dp_nativeplugin":{
"android": {
"plugins": [
{
"type": "module",
"name": "TTPrint",// 这是引入时使用的KEY
"class": "com.example.uniplugin_module.TTModule" // 此处名称是安卓代码的打包类名
}
],
"integrateType": "aar"
}
}
}
使用:
// 使用
const printSdk = uni.requireNativePlugin('TTPrint'); // TTPrint 就是 插件package配置文件里面写的name属性值
// 然后就可以在项目中通过 printSdk.xxx() 调用插件中有的方法