更新记录
1.1.0(2023-02-23)
本次主要更新: 1.增加module组件,
1.0.0(2022-06-23)
首次更新
平台兼容性
Android | Android CPU类型 | iOS |
---|---|---|
适用版本区间:4.4 - 12.0 | armeabi-v7a:支持,arm64-v8a:支持,x86:支持 | 适用版本区间:11 - 16 |
原生插件通用使用流程:
- 购买插件,选择该插件绑定的项目。
- 在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原生插件配置”->”云端插件“列表中删除该插件重新选择
KJ-MapSnapshot
地图截图、nvue map 高德地图组件升级、可使用nvue map 所有功能
注意事项
manifest.json -> app模块配置 -> Maps -> 高德地图 勾选
使用
<template>
<view class="content">
<map id="map" class="map" ref="map" :scale="map.scale" @regionchange="regionchange" @updated="updated"
:latitude="map.latitude" :longitude="map.longitude" :markers="covers" @callouttap="de" @markertap="de"
@labeltap="de">
</map>
<button type="primary" @click="takeSnapshot">地图截图</button>
<view>截图的结果如下:</view>
<image class="image" :src="imagePath" mode="scaleToFill"></image>
</view>
</template>
<script>
const KJMapSnapshot = uni.requireNativePlugin('KJ-MapSnapshot');
export default {
data() {
return {
map: {
scale: 17,
latitude: 23.099994,
longitude: 113.324520
},
covers: [],
imagePath: null
};
},
onLoad() {
},
onReady() {
var positions = []
var latitude = 23.099994
var longitude = 113.324520
for (var i = 0; i < 100; i++) {
latitude += 0.001;
longitude += 0.001;
positions.push({
latitude: latitude,
longitude: longitude,
})
}
//console.log(positions)
var arr = [];
for (var i = 0; i < positions.length; i++) {
arr.push({
id: i + 1000,
latitude: positions[i].latitude,
longitude: positions[i].longitude,
iconPath: '/static/logo.png',
width: 30,
height: 30,
});
}
this.covers = arr;
},
methods: {
takeSnapshot() {
KJMapSnapshot.init((res) => {
console.log("init:" + JSON.stringify(res))
var count = res.count; //map组件的个数
for (var i = 0; i < count; i++) {
this.takeSnapshot2(i)
}
})
},
takeSnapshot2(mapIndex) {
var dic = {
"mapIndex": mapIndex,
"savePath": plus.io.convertLocalFileSystemURL("_doc/KJ-MapSnapshot"), //保存图片位置,一定要是_doc绝对路径
"format": "jpeg", //保存的图片格式 有效值:png、jpeg
"quality": 100, //保存的图片质量,取值1-100, ios png 无效
}
KJMapSnapshot.takeSnapshot(dic, (res) => {
console.log("takeSnapshot:" + JSON.stringify(res))
this.imagePath = plus.io.convertAbsoluteFileSystem(res.filePath)
uni.getFileInfo({
filePath: this.imagePath,
success: (res) => {
console.log(JSON.stringify(res))
}
})
});
}
}
};
</script>
<style>
.content {
display: flex;
}
.map,
.image {
width: 750rpx;
height: 500rpx;
}
</style>