如何在 iOS 项目中集成 MiniApp SDK,快速构建智能小程序?

本文介绍如何在 iOS 项目中,集成 MiniApp SDK,使之能够构建智能生活小程序,运行在你的 IoT App 上。

准备工作

在集成 MiniApp SDK 之前,您需要在 涂鸦 IoT 开发平台 上:

  • 注册开发者账号、创建产品、创建功能点等。
  • 创建智能生活 App SDK,然后获取激活 SDK 的密钥,以保证小程序功能的正常运行。具体操作流程可参考:准备工作。

前提条件

请确保已经集成了涂鸦 智能生活 App SDK。具体集成方式,请参考 集成 SDK。

集成 SDK

MiniApp SDK 目前支持 pod 集成。

  1. 安装 Pod 环境。

    MiniApp SDK 的组件依赖于 CocoaPods 管理,所以首先需要在您的运行环境 安装 CocoaPods。

    sudo gem install cocoapods
    pod setup
    
  2. 创建 Podfile 文件。

    打开项目根目录,确认项目根目录下是否存在 Podfile 文件,不存在则创建。

    touch Podile
    

    Podfile 文件中新增以下内容:

    source 'https://github.com/tuya/tuya-pod-specs.git'
    platform :ios, '11.0'
    inhibit_all_warnings!target 'Your_Project_Name' dopod "ThingSmartMiniAppBizBundle"
    end
    
  3. 更新 CocoaPods 依赖。

    // 更新repo源&组件版本
    pod update
    // 更新组件版本
    pod update --no-repo-update
    

增加权限描述

为了保护用户隐私,苹果要求 App 必须申请相关的权限才可以使用某些系统能力。例如,相机、相册、蓝牙、麦克风和位置等。

权限名称权限 Key权限涉及 API
相册读取NSPhotoLibraryUsageDescription
  • chooseImage
  • chooseMedia
相册写入NSPhotoLibraryAddUsageDescriptionsaveToAlbum
相机NSCameraUsageDescription
  • scanCode
  • chooseImage
  • chooseMedia
蓝牙NSBluetoothAlwaysUsageDescriptionNSBluetoothPeripheralUsageDescription配网相关 API、设备控制相关 API
麦克风NSMicrophoneUsageDescriptionchooseMedia

设备支持方向

集成 SDK

小程序页面支持横竖屏切换。如果您有页面切换横竖屏的需求,请首先在项目工程内配置 App 支持的横竖屏模式。

 

打开小程序

头文件依赖

#import <ThingSmartMiniAppBizBundle/ThingSmartMiniAppBizBundle.h>

打开小程序

// 通过小程序 ID 打开小程序
[[ThingMiniAppClient coreClient] openMiniAppByAppId:@"tydhopggfziofo1h9h"];// 通过 URL 打开小程序
[[ThingMiniAppClient coreClient] openMiniAppByUrl:@"godzilla://tydhopggfziofo1h9h/" params:@{}];// 通过二维码打开小程序
[[ThingMiniAppClient coreClient] openMiniAppByQrcode:@"qrcodeString" params:@{}];

引入能力包

为了使小程序拥有更多的可能性,涂鸦针对一些常用的能力做了包装,并且提供了不同的能力包以供选择。大家只需要将所需的能力包集成到工程中,就可以调用相应能力包中的 API,实现业务功能的开发。

基础能力包

基础能力包,与腾讯微信小程序大部分 API 类似,包括上传、下载、录音、交互、文件操作等 API。建议您默认集成基础能力包。

pod 'ThingSmartBaseKitBizBundle'

业务能力包

业务能力包提供了开发过程中一些常用涂鸦业务体系下的 API,包括查询多语言、打开控制面板等。建议默认集成业务能力包。

pod 'ThingSmartBizKitBizBundle'

家庭管理能力包

家庭管理能力主要包括以 家庭 为单位的信息查询等能力,是一些涂鸦业务管理的基础条件。家庭 是场景智能执行的最大单位。如需集成家庭管理能力包,在以上能力依赖的基础上,大家还需要额外集成 家庭管理 UI 业务包。

设备控制能力包

设备控制能力包是对设备控制相关能力的封装,能实现控制、监听、移除设备。如有需求,可参考 设备控制业务包接入文档。

pod 'ThingSmartDeviceKitBizBundle'

如果需要使用设备控制中蓝牙相关的能力,还需要集成如下组件:

pod 'ThingBLEInterfaceImpl'
pod 'ThingBLEMeshInterfaceImpl'

地图能力包

地图能力包是对地图相关能力的封装,包括获取位置、地理围栏等。

pod 'ThingSmartMapKitBizBundle'

媒体能力包

媒体能力包是对视频和相机的封装,您在使用 video 和 camera 媒体组件时,需要集成媒体能力包。

pod 'ThingSmartMediaKitBizBundle'

配网能力包

配网能力包是对配网流程的封装,提供了配网流程中所涉及的 API。您自建配网流程时,需要集成配网能力包。

pod 'ThingSmartPlayNetKitBizBundle'

P2P 传输能力包

P2P 传输能力包是对 P2P 建连/传输等能力的封装,包含 P2P 的初始化、连接、上传、下载和销毁等功能。适用于扫地机、门锁和 IPC 等。

pod 'ThingSmartP2PKitBizBundle'

👉 立即免费领取开发资源,体验涂鸦 MiniApp 小程序开发。 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

IO进程线程Day8

让2个终端之间互相聊天&#xff0c;使用消息队列去实现 #include <myhead.h> //使用消息队列实现两个进程的相互聊天 #define ERR_MSG(msg) do{fprintf(stderr,"__%d__",__LINE__);\perror(msg);\}while(0) int msgid; typedef struct{long mtype;char text…

Quasi-Direct Drive for Low-Cost Compliant Robotic Manipulation翻译

文章目录 标题摘要I. 引言A. 问题定义和用户需求B. 定义有用的机器人操控器C. 定义有用的带宽和载荷D. 低成本设计约束 II. 相关工作A. 机器人系统中的柔顺性B. 人类载荷下的力控制机械臂C. 现有的低成本机械臂D. 驱动方案 III. 低成本柔顺操控的设计A. 准直驱驱动B. 差分齿带传…

spikingjelly学习-训练网络

【MNIST数据集包含若干尺寸为28*28的8位灰度图像&#xff0c;总共有0~9共10个类别。以MNIST的分类为例&#xff0c;一个简单的单层ANN网络如下 我们也可以用完全类似结构的SNN来进行分类任务。就这个网络而言&#xff0c;只需要先去掉所有的激活函数&#xff0c;再将尖峰神经元…

IDEA 2024.1到底更新啥有用的?

0 关键亮点 全行代码补全 Ultimate IntelliJ IDEA Ultimate 2024.1 针对 Java 全行代码补全。 这项功能由无缝集成到 IDE 中的高级深度学习模型提供支持。 它可以基于上下文分析预测和建议整行代码&#xff0c;有助于提高编码效率。 这些建议由针对不同语言和框架特别训练的专…

UML学习

UML(Unified Modeling Language)&#xff1a;统一建模语言&#xff0c;提供了一套符号和规则来帮助分析师和设计师表达系统的架构、行为和交互 类图&#xff1a;描绘类、接口之间的关系(继承、实现、关联、依赖等)以及类的内部结构(属性和方法)&#xff0c;直观展现系统的静态…

水资源管理系统:守护生命之源,构建和谐水生态

水资源是维系地球生态平衡和人类社会可持续发展的重要基础。然而&#xff0c;随着人口增长、工业化和城市化的加速&#xff0c;水资源短缺、水质污染和生态破坏等问题日益凸显。在这样的背景下&#xff0c;构建一个全面、高效、智能的水资源管理系统显得尤为迫切和必要。 项目…

AI智能客服机器人是什么?对企业重要吗?

在数字化时代&#xff0c;客户服务是企业与客户建立牢不可破关系的重要桥梁。AI智能客服机器人&#xff0c;顾名思义&#xff0c;就是利用人工智能技术提升客户服务体验的自动化工具。今天&#xff0c;就让我们来揭开AI智能客服机器人的神秘面纱&#xff0c;并讨论它对企业的重…

【C++ STL有序关联容器】map 映射

文章目录 【 1. 基本原理 】【 2. map 的创建 】2.1 调用默认构造函数&#xff0c;创建一个空的 map2.2 map 被构造的同时初始化2.3 通过一个 map 初始化另一个 map2.4 取已建 map 中指定区域内的键值对&#xff0c;初始化新的 map2.5 指定排序规则 【 2. map 元素的操作 】实例…

Bioorganic Chemistry:中国药科大学王鹏课题组、陈俊青课题组设计的基于AIE机理的高荧光选择性鉴定Cys/HCy

文献来源&#xff1a;Highly selective fluorescent probe based on AIE for identifying cysteine/homocysteine - PubMed (nih.gov) 一、AIE机理在荧光探针设计方向的应用&#xff1a; 参考文献&#xff1a;几种代表性的AIE的发光特点和机制&#xff08;2020-10-11&#xff…

PostgreSQL入门到实战-第六弹

PostgreSQL入门到实战 PostgreSQL查询语句(三)官网地址PostgreSQL概述PostgreSQL中ORDER BY理论PostgreSQL中ORDER BY实操更新计划 PostgreSQL查询语句(三) 官网地址 声明: 由于操作系统, 版本更新等原因, 文章所列内容不一定100%复现, 还要以官方信息为准 https://www.post…

蓝桥杯刷题--RDay5

清理水域--枚举 8.清理水域 - 蓝桥云课 (lanqiao.cn)https://www.lanqiao.cn/problems/2413/learning/?page1&first_category_id1&second_category_id3&tags2023 小蓝有一个n m大小的矩形水域&#xff0c;小蓝将这个水域划分为n行m列&#xff0c;行数从1…

Docker入门指南:从安装到基本操作和镜像构建的全面教程

文章目录 一、Docker简介二、Docker的安装三、Docker的基本概念四、Docker的基本操作五、Dockerfile和镜像构建六、总结 一、Docker简介 Docker是一个开源的应用容器引擎&#xff0c;它允许开发者将应用程序及其依赖项打包到一个可移植的容器中&#xff0c;然后在任何支持Dock…

人民网至顶科技:《开启智能新时代:2024中国AI大模型产业发展报告发布》

​3月26日&#xff0c;人民网财经研究院与至顶科技联合发布《开启智能新时代&#xff1a;2024年中国AI大模型产业发展报告》。该报告针对AI大模型产业发展背景、产业发展现状、典型案例、挑战及未来趋势等方面进行了系统全面的梳理&#xff0c;为政府部门、行业从业者以及社会公…

如何避免儿童校园霸凌:羊大师为您支招

校园应是学习和成长的乐土&#xff0c;而非恐惧和伤害的源泉。**在这个追求和谐社会的时代&#xff0c;校园霸凌问题依然是一个亟需解决的社会现象。羊大师作为关心儿童成长的一员&#xff0c;今天将为家长和教育工作者提供一些实用建议&#xff0c;帮助孩子避免成为校园霸凌的…

Python Selenium UI自动化测试

&#x1f525; 交流讨论&#xff1a;欢迎加入我们一起学习&#xff01; &#x1f525; 资源分享&#xff1a;耗时200小时精选的「软件测试」资料包 &#x1f525; 教程推荐&#xff1a;火遍全网的《软件测试》教程 &#x1f4e2;欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1…

IO-DAY8

使用消息队列去实现2个终端之间的互相聊天 要求:千万不要做出来2个终端之间的消息发送是读一写的&#xff0c;一定要能够做到&#xff0c;一个终端发送n条消息&#xff0c;另一个终端一条消息都不回复 A终端&#xff1a; #include<myhead.h> typedef struct msgbuf {lon…

设计模式学习笔记 - 设计模式与范式 -行为型:8.状态模式:游戏、工作流引擎中常用的状态机是如何实现的?

概述 本章学习状态模式。在实际的开发中&#xff0c;状态模式并不是很常用&#xff0c;但是在能够用到的场景里&#xff0c;它可以发挥很大的作用。从这一点上看&#xff0c;它有点像我们之前讲到的组合模式。 状态模式一般用来实现状态机&#xff0c;而状态机常用在游戏、工…

【C++】用红黑树封装map和set

我们之前学的map和set在stl源码中都是用红黑树封装实现的&#xff0c;当然&#xff0c;我们也可以模拟来实现一下。在实现之前&#xff0c;我们也可以看一下stl源码是如何实现的。我们上篇博客写的红黑树里面只是一个pair对象&#xff0c;这对于set来说显然是不合适的&#xff…

基于JAVA的汽车售票网站论文

摘 要 互联网发展至今&#xff0c;无论是其理论还是技术都已经成熟&#xff0c;而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播&#xff0c;搭配信息管理工具可以很好地为人们提供服务。针对汽车售票信息管理混乱&#xff0c;出错率高&#xff0c;信息安全性差…

AI技术将影响更长远,比如未来的就业形势

随着人工智能渗透到工作场所&#xff0c;人类将需要掌握新的工作技能。 AI作为新技术已经开始扰乱就业市场了。对于最新的AI人工智能技术&#xff0c;经济学家、教育工作者、监管机构、商业分析师以及相关领域专家预测&#xff0c;在不久的将来&#xff0c;人工智能一代将需要…