智能小程序环境配置流程

App 与智能小程序

在用户使用 App 扫描小程序的二维码或者点击设备,尝试进入小程序时,系统会对 App 当前环境与小程序所需运行环境进行比对,确定环境配置兼容后,App 才能启动并运行小程序。

比对规则中,主要涉及:

  • 基础库版本的比对
  • Kit 包的种类与版本比对

也就是说,小程序使用的基础库版本、Kit 包种类和版本,会影响 App 能否启动并运行小程序。

 >> 新建项目

基础库比对

小程序基础库 是负责加载框架的容器,提供小程序框架需要的标准组件和标准 API 接口。

每个 App 中集成的容器(SDK)版本固定不变,一个容器版本会与多个小程序基础库版本有绑定关系。例如:

App 容器版本 2.4.1 可以绑定下述多个基础库版本: 2.2.4、2.2.3、2.1.20、2.1.19、2.1.18。

基础库次版本号改动是向下兼容的,所以 App 会拉取绑定的最新的基础库版本,去运行小程序。

开发者开发的小程序基础库版本低于当前 App 绑定的最新基础库版本,即表示兼容。

假设当前 App 的容器版本是 2.4.1,绑定的最新基础库版本是 2.2.4

  1. 小程序指定基础库版本 2.1.15 —— ✅ App 拉取基础库 2.2.4 运行该小程序。
  2. 小程序指定基础库版本 1.2.30 —— ❌ 跨基础库主版本号,不兼容。
  3. 小程序指定基础库版本 2.4.0 —— ❌ 高于 App 绑定的最新基础库版本号。

 

Kit 包比对

Kit 包 是智能小程序将扩展能力以 Kit 的形式提供给开发者。详细信息可参考下方 API能力集成指南

每个 App 中集成的 Kit 种类和版本固定不变,Kit 版本同样遵循次版本号向下兼容的原则。

进入小程序前,系统会比对 App 中集成的 Kit 种类、版本与小程序所需的 Kit 种类、版本,确定是否兼容。

假设当前 App 集成的 Kit 有:

Kitversion
BaseKit2.2.3
MiniKit2.3.8
TYKit2.1.4
  1. 小程序使用的 Kit 有 BaseKit 2.1.2、MiniKit 2.3.7、TYKit 2.0.7 —— ✅ 小程序所需的 Kit 在 App 中都有集成且版本兼容。
  2. 小程序使用的 Kit 有 BaseKit 2.1.2、MiniKit 2.3.7、TYKit 2.0.7、DeviceKit 2.1.6 —— ❌ DeviceKit 在 App 中未集成。
  3. 小程序使用的 Kit 有 BaseKit 2.1.2、MiniKit 2.4.0 —— ❌ 小程序所需 MiniKit 版本高于 App 中集成的版本。

API能力集成指南

概念

小程序能力分为内置能力、扩展能力提供给开发者。内置能力以集成在基础库的 JS API 提供给开发者,扩展能力是将基础能力以 kit 的形式提供给业务(开发者)。以内置能力与扩展能力结合的方式实现快速接入涂鸦生态,达到互联互通的能力。

能力分包

能力分类包名
基础能力BaseKit
小程序容器能力MiniKit
涂鸦内部基础能力以及细粒度通用业务能力BizKit
设备控制相关能力DeviceKit
家庭相关能力(比如获取家庭信息等)HomeKit
媒体、语音相关业务能力(比如音乐律动等)MediaKit
地图、定位相关业务能力MapKit
配网相关业务能力PlaynetKit
扫地机相关业务能力P2PKit

使用

1. 配置小程序扩展能力

在 Tuya MiniApp Tools 中可手动配置需要的小程序扩展能力。其中,MiniKit 作为运行小程序容器的基础能力会自动引入,开发者只需要关注版本即可,其他的能力可以自行配置。

2. 使用 Kit 能力
  1. 插件 BaseKit、BizKit、MiniKit 作为基础能力,可以直接使用 ty.func() 即可。

    比如 hideTabBar 作为 BaseKit 能力,可以直接使用,如下:

    ty.hideTabBar({
      animation: xxx,
    });
  2. 除 BaseKit、BizKit、MiniKit 外,其余 Kit 使用,需要在前面加上 namespace。

    namespace 为 Kit 名称去掉 Kit 小写(HomeKit -> home)

    比如 getCurrentHomeInfo 作为 HomeKit 能力,使用如下:

    ty.home.getCurrentHomeInfo({
      success(homeInfo) {},
    });
3. 选择 Kit 版本

Kit 版本的选择会影响到小程序能否下发到 App。

在 App 中查看信息

在 App 中可以查看集成的容器版本、Kit 版本信息。在小程序右上角胶囊处,长按 关闭 按钮 10s,即会弹出相关信息。

弹窗显示的就是 App 中调用的基础库版本以及集成的 Kit 版本。

 

在Tuya MiniApp Tool 中配置环境

在 Tuya MiniApp Tool 中,您可手动配置需要的小程序扩展能力。其中,MiniKit 作为运行小程序容器的基础能力会被自动引入。开发者只需要关注版本即可,您也可以自行配置其他的能力。

关于 Kit 版本,建议您选择带有推荐标识的版本。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/341535.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

「webpack面试系列」说说你对webpack的理解?解决了什么问题?(收藏好,用时好找)

文章目录 一、背景模块化 二、问题三、是什么webpack的能力: 一、背景 Webpack 最初的目标是实现前端项目的模块化,旨在更高效地管理和维护项目中的每一个资源 模块化 最早的时候,我们会通过文件划分的形式实现模块化,也就是将…

【计算机网络】应用层——HTTP 协议(一)

个人主页:兜里有颗棉花糖 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创 收录于专栏【网络编程】 本专栏旨在分享学习计算机网络的一点学习心得,欢迎大家在评论区交流讨论💌 目录 一、什么是 HTTP 协…

Redis(六)

1、Redis的缓存淘汰策略 1.1、内存配置 首先查看Redis最大的占用内存,打开redis配置文件,设置maxmemory参数,maxmemory是bytes字节类型,注意转换。 打开配置文件发现没有配置,那么默认是多少的内存,是这样…

第2章-OSI参考模型与TCP/IP模型

目录 1. 引入 2. OSI参考模型 2.1. 物理层 2.2. 数据链路层 2.3. 网络层 2.4. 传输层 2.5. 会话层 2.6. 表示层 2.7. 应用层 3. 数据的封装与解封装 4. TCP/IP模型 4.1. 背景引入 4.2. TCP/IP模型(4层) 4.3. 拓展 1. 引入 1)产…

Visual Studio2022实用使用技巧集

前言 对于.NET开发者而言Visual Studio是我们日常工作中比较常用的开发工具,掌握一些Visual Studio实用的搜索、查找、替换技巧可以帮助我们大大提高工作效率从而避免996。 Visual Studio更多实用技巧 https://github.com/YSGStudyHards/DotNetGuide 代码和功能搜…

记一次 stackoverflowerror 线上排查过程

一.线上 stackOverFlowError xxx日,突然收到线上日志关键字频繁告警 classCastException.从字面上的报警来看,仅仅是类型转换异常,查看细则发现其实是 stackOverFlowError.很多同学面试的时候总会被问到有没有遇到过线上stackOverFlowError?有么有遇到栈溢出?具体栈溢出怎么来…

植物神经功能紊乱是什么?

植物神经也叫自律神经,它是一种自发的,非主观意识控制的,低级的神经活动。包括呼吸的、心律的、汗腺的、胃肠道的调节等等,都叫植物神经功能调节。 植物神经它的一旦出现了障碍可以有两种倾向,一种倾向就是出汗、兴奋…

Spring Boot3整合knife4j(swagger3)

目录 1.前置条件 2.导依赖 3.配置 1.前置条件 已经初始化好一个spring boot项目且版本为3X,项目可正常启动。 作者版本为3.2.2最新版 2.导依赖 knife4j官网: Knife4j 集Swagger2及OpenAPI3为一体的增强解决方案. | Knife4j (xiaominfo.com)http…

Docker初次体验:WSL+Docker+portanier

文章目录 前言Docker是什么?Docker的优点Docker的使用场景:一件安装 Docker安装开启虚拟化安装wsl下载慢的请看这个下载成功 安装Docker修改Docker安装位置 配置Docker安装portanier(可视化的Docker操作页面)登录网址 总结 前言 …

2008年苏州大学837复试机试C/C++

2008年苏州大学复试机试 题目 编写程序充成以下功能: 一、从键盘上输入随机变量x的 10个取样点。X0,X1—X9 的值; 1、计算样本平均值 2、判定x是否为等差数列 3、用以下公式计算z的值(t0.63) 注。请对程序中必要地方进行注释 补充:个人觉得这个题目回忆…

Hylicos - MINI2440 - 中断控制

中断 中断源管理 中断是一种异步异常,CPU需要处理很多来自设备的中断请求,而CPU引出的line只有IRQ线和FIQ线,所以就得引入中断控制器帮助CPU搞清楚是中断的来源。 MINI2440的中断控制器,可以接受来自60个中断源的请求。提供这些…

解决vue 2.6通过花生壳ddsn(内网穿透)实时开发报错Invalid Host header和websocket

请先核对自己的vue版本,我的是2.6.14,其他版本未测试 起因 这两天在维护一个基于高德显示多个目标(门店)位置的项目,由于高德要求定位必须使用https服务,遂在本地无法获取到定位坐标信息,于是…

020-信息打点-红蓝队自动化项目资产侦察企查产权武器库部署网络空间

020-信息打点-红蓝队自动化项目&资产侦察&企查产权&武器库部署&网络空间 #知识点: 1、工具项目-红蓝队&自动化部署 2、工具项目-自动化侦查收集提取 3、工具项目-综合&网络空间&信息 演示案例: ➢自动化-武器库部署-F8x ➢自…

MySQL数据库查询语句之组函数,子查询语句

组函数 以组为操作单位,一组数据得到一个结果。 在没有手动分组的前提下,整张表默认为一组数据 max(列名):获取最大值 min(列名):获取最小值 sum(列名):获取总和 avg(列名):获取平均值 count(列名)&a…

Operation

contents 服务器一、相关概念1.1 云服务器与实例1.2 关于域名解析延时与80端口1.3 关于备案1.4 关于SSL证书1.5 关于SSL证书的签发1.6 关于SSL证书的部署1.7 关于LNMP和LAMP1.8 关于bt面板 二、单服务器单一级域名多网站2.1 创建多个二级域名2.2 解析二级域名绑定到服务器上2.3…

夜视成像应用激光照明方法

在夜视成像领域,激光照明的使用主要集中在提高成像质量和远距离观察上。 以下是几种用于夜视成像的激光照明方法: 直接激光照明: 这种方法涉及直接用激光光束照射目标。激光器发出的光束可以是可见光或红外光,具体取决于应用需求和…

day01 深度学习介绍

目录 1.1深度学习介绍 1.2神经网络NN 1、概念: 2、神经元 3、(单层)神经网络 4、感知机(两层) 5、多层神经网络 6、激活函数 (1)饱和与非饱和激活函数 (2)饱和激活…

项目工时统计成本核算管理

技术架构: Java 1.8 MySQL 8 Vue 项目基于前后端分离架构,服务端主要技术:SpringBoot 前端主要是Vue。 项目介绍: 轻量级项目工时统计系统,是目前企业进行项工时管理统计的推荐选择。 通过项目工时管理系统,可通过…

Linux--文件链接

目录 1.建立软连接 2.建立硬链接 3.什么是软链接 Linux中软链接的应用场景 4.什么是硬链接 5.文件与目录的硬链接数 6.软链接与硬链接的区别 用户无法对目录建立硬链接,可以建立软连接。 在Linux中文件的链接有两种:1.软连接 2.硬链接 1.建立软…

Docker 配置 Gitea + Drone 搭建 CI/CD 平台

Docker 配置 Gitea Drone 搭建 CI/CD 平台 配置 Gitea 服务器来管理项目版本 本文的IP地址是为了方便理解随便打的,不要乱点 首先使用 docker 搭建 Gitea 服务器,用于管理代码版本,数据库选择mysql Gitea 服务器的 docker-compose.yml 配…