更新记录
1.1.4(2021-07-13)
发布插件
平台兼容性
Android | Android CPU类型 | iOS |
---|---|---|
适用版本区间:4.4 - 9.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原生插件配置”->”云端插件“列表中删除该插件重新选择
自定义相机
1.android自定义相机获取,获取相机分辨率,预览参数,根据指定的相片参数,生成相片
功能描述
本插件功能如下:
调用
引入插件
注,文件为 .nvue
<KJ-Camera ref='Camera' class="KJ-Camera" :style="{width:'100%',height:cameraHeight}">
</KJ-Camera>
提供的API列表
相机初始化:Camera.initCamera(); 拍照:Camera.captureImage;
使用示例
<template>
<view class="page">
<KJ-Camera ref='Camera' class="KJ-Camera" :style="{width:'100%',height:cameraHeight}">
</KJ-Camera>
<view class="btn-view">
<button @click="captureImage" class="btn" type="primary">
拍照
</button>
</view>
</view>
</template>
<script>
var videoFilePath;
export default {
data() {
return {
cameraWidth: "100%",
cameraHeight: "auto",
src: ""
}
},
onReady() {
console.log("onReady")
},
() {
console.log("")
var _this = this;
uni.getSystemInfo({
success: function(res) {
_this.cameraHeight = res.windowHeight
setTimeout(function() {
try {
_this.$refs.Camera.initCamera();
} catch (e) {
//TODO handle the exception
}
}, 10);
}
});
},
methods: {
initCamera() {
this.$refs.Camera.initCamera();
},
captureImage() {
var _this = this;
var dic = {
"savePath": plus.io.convertLocalFileSystemURL("_doc/KJ-Camera") //保存图片位置,一定要是_doc绝对路径
}
this.$refs.Camera.captureImage(dic, (res) => {
console.log("filePath: " + res.filePath)
//_this.src = "file://" + res.filePath;
uni.saveImageToPhotosAlbum({
filePath: plus.io.convertAbsoluteFileSystem(res.filePath),
success: function() {
console.log('save success');
},
fail: function(e) {
console.log(JSON.stringify(e));
}
});
});
}
}
}
</script>
<style lang="scss">
.KJ-Camera {
width: 100%;
position: fixed;
top: 0px;
bottom: 0px;
left: 0;
right: 0;
}
.btn {
height: 35px;
width: 260px;
}
.btn-view {
position: fixed;
bottom: 0;
left: 0;
right: 0;
}
</style>