更新记录

1.0(2023-06-25)

新版发布


平台兼容性

Android Android CPU类型 iOS
适用版本区间:4.4 - 14.0 armeabi-v7a:未测试,arm64-v8a:未测试,x86:未测试 适用版本区间:9 - 17

原生插件通用使用流程:

  1. 购买插件,选择该插件绑定的项目。
  2. 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
  3. 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
  4. 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
  5. 开发完毕后正式云打包

付费原生插件目前不支持离线打包。
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和ios端的appkey
  2. manifest.json中App模块配置,勾选Maps(地图)中的高德地图模块,并配置appkey
  3. 制作uniapp自定义调试基座,运行到手机设备进行调试。注:1: appkey如有更改,必需要重新制作自定义基座,2:appkey与App的包名、签名证书的SHA1要对上3: 基座打包完成后,建议卸载基座后重新运行安装基座调试

插件接口

1、地图截屏插件对象

//地图截屏插件对象
var AMapScreenShot = uni.requireNativePlugin('AMap-ScreenShot');

2、地图截屏接口,支持vue和nvue高德地图map组件

AMapScreenShot.takeMapScreenshot(Object, Callback);

Object参数说明

属性 类型 必填 说明
mapId String 地图map组件id
path String 图片输出路径
width Number 图片宽度
height Number 图片高度
quality Number 图片质量

Callback 返回 Object 参数说明

属性 类型 说明
status Number 表示地图此时是否完整,0:不完整,1:完整,-1:错误
path String 图片路径

示例代码

<template>
    <view>
        <map :style="{width: '750rpx', height:'300px'}"
            :latitude="latitude" :longitude="longitude" scale="14">
        </map>
        <button type="primary" @click="takeMapScreenshot()">地图截屏</button>
        <text>地图截屏结果显示:</text>
        <image style="width:750rpx;height:300px" :src="imagePath" mode="aspectFit"></image>
    </view>
</template>

<script>
    //地图截屏插件对象
    var AMapScreenShot = uni.requireNativePlugin('AMap-ScreenShot');
    var that;
    export default {
        data() {
            return {
                latitude: 30.266054,
                longitude: 120.12376,
                imagePath:""
            }
        },
        onLoad() {
            that = this;
        },
        methods: {
            takeMapScreenshot() {
                this.imagePath = "";

                //地图截屏
                var nowTime = (new Date()).getTime();
                var outpath = plus.io.convertLocalFileSystemURL("_doc/map_screen_shot_" + nowTime + ".jpg");
                AMapScreenShot.takeMapScreenshot({
                    //mapId:"nvue_map_1",//地图组件id
                    path:outpath,//图片路径
                    //width:750,//图片宽度
                    //height:400,//图片高度
                    quality:75//图片质量
                }, function(res){
                    console.log(res);
                    var status = res.status;//status表示地图此时是否完整,0:不完整,1:完整,-1:错误
                    var imagePath = res.path;//图片路径
                    that.imagePath = "file://" + imagePath;

                    uni.showToast({
                        title:"地图截屏成功"
                    });
                });
            }
        }
    }
</script>

隐私、权限声明

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

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

插件自身不采集任何数据,插件使用的高德地图 SDK采集数据请参考其官方说明:https://lbs.amap.com

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

暂无用户评论。

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