更新记录
1.0.3(2021-12-23)
markdow说明
平台兼容性
Android | Android CPU类型 | iOS |
---|---|---|
适用版本区间:5.0 - 11.0 | armeabi-v7a:支持,arm64-v8a:支持,x86:支持 | × |
原生插件通用使用流程:
- 购买插件,选择该插件绑定的项目。
- 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
- 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
- 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
- 开发完毕后正式云打包
付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios
注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择
<template>
<view class="content">
<!-- <image class="logo" src="/static/logo.png"></image> -->
<view class="text-area">
<text class="title">{{title}}</text>
</view>
<!-- <button @click="handlerTest">1+1=</button> -->
<button @click="opendevice">打开设备</button>
<button @click="sethigh">调高</button>
<button @click="setlow">调低</button>
<button @click="getvalue">获取</button>
<view class="">
返回值:
<textarea v-model="text"></textarea>
</view>
<view class="">
读取:
<textarea v-model="text1"></textarea>
</view>
</view>
</template>
<script>
const testPlugin = uni.requireNativePlugin('MFJ-GPIO');
export default {
data() {
return {
title: 'gpio插件',
text:"",
text1:""
}
},
onLoad() {
},
methods: {
handlerTest() {
const testPlugin = uni.requireNativePlugin('MFJ-GPIO');
testPlugin.add({
a: 1,
b: 2
},e=>{
uni.showToast({
title: JSON.stringify(e),
icon: 'none'
})
})
},
opendevice(){
debugger
let that =this
let GpioUtils = testPlugin.OpenDevice({},e=>{
uni.showToast({
title: JSON.stringify(e),
icon: 'none'
})
that.text =e.toString()
})
},
sethigh(){
let value =testPlugin.SetValueHigh({gpioId:50},e=>{
uni.showToast({
title: JSON.stringify(e),
icon: 'none'
})
this.text =e.toString()
})
},
setlow(){
let value= testPlugin.SetValueLow({gpioId:50},e=>{
uni.showToast({
title: JSON.stringify(e),
icon: 'none'
})
this.text =e.toString()
})
},
getvalue(){
testPlugin.getValue({gpioId:50},e=>{
this.text1 =e.result
})
}
}
}
</script>
<style>
.content {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
.logo {
height: 200rpx;
width: 200rpx;
margin-top: 200rpx;
margin-left: auto;
margin-right: auto;
margin-bottom: 50rpx;
}
.text-area {
display: flex;
justify-content: center;
}
.title {
font-size: 36rpx;
color: #8f8f94;
}
</style>