本文介绍如何在安卓项目中,集成 MiniApp SDK,使之能够构建智能生活小程序,运行在你的 IoT App 上。
准备工作
在集成 MiniApp SDK 之前,需要在 涂鸦 IoT 开发平台 上:
- 注册开发者账号、创建产品、创建功能点等。
- 创建智能生活 App SDK,然后获取激活 SDK 的密钥,以保证小程序功能的正常运行。具体操作流程,请参考 准备工作。
前提条件
请确保你已经集成了涂鸦 智能生活 App SDK。具体集成方式,请参考 集成 SDK。
导入 SDK
导入 SDK 时,请按照以下步骤配置仓库声明:
-
在父工程的
build.gradle
中,添加 MiniApp SDK 的 Maven 仓库地址:repositories { maven { url 'https://maven-other.tuya.com/repository/maven-releases/' } maven { url "https://maven-other.tuya.com/repository/maven-commercial-releases/" } }
-
在工程
build.gradle
中,添加相关的依赖:android { packagingOptions { pickFirst 'lib/*/libv8wrapper.so' pickFirst 'lib/*/libv8android.so' } } dependencies { //版本管理组件-必选 implementation enforcedPlatform("com.thingclips.smart:thingsmart-BizBundlesBom:5.8.16") // MiniApp SDK 业务包-必选 implementation "com.thingclips.smart:thingsmart-bizbundle-miniapp" // 扩展能力组件集合,提供小程序扩展能力,按需依赖声明 // 基础扩展能力,对标微信大部分 API implementation "com.thingclips.smart:thingsmart-bizbundle-basekit" // 扫码能力 // 如果是在中国大陆地区扫码,请依赖 // implementation 'com.thingclips.smart:thingsmart-qrcode-scankit:5.8.0-rc.1' // implementation 'com.thingclips.smart:thingsmart-qrcode-api:5.8.0-rc.3' // 如果是在其他国家或地区扫码,请依赖 // implementation 'com.thingclips.smart:thingsmart-qrcode-mlkit:5.8.0-rc.2' // implementation 'com.thingclips.smart:thingsmart-qrcode-api:5.8.0-rc.3' }
-
引入扫码组件之后,在项目工程中的
assets
文件下的module_app.json
中,添加两处配置:-
在
moduleMapp
中,添加如下代码:// 中国大陆地区 "com.thingclips.smart.scankit.qrcode.ScanKitModuleApp": [ "scan_qrcode" ] // 其他国家或地区 // "com.thingclips.smart.mlkit.qrcode.MLKitModuleApp": [ // "scan_qrcode" // ]
-
在
serviceMap
中,添加如下代码:// 中国大陆地区 "com.thingclips.smart.multimedia.qrcode.api.ScanQRCodeService": "com.thingclips.smart.scankit.qrcode.ScanQRCodeServiceImpl" // 其他国家或地区 // "com.thingclips.smart.multimedia.qrcode.api.ScanQRCodeService": "com.thingclips.smart.mlkit.qrcode.ScanQRCodeServiceImpl"
-
添加权限描述
如果您集成所有的 SDK,那么涉及到的系统权限包括存储、摄像头、录音、读取手机状态、位置、蓝牙、通讯录等。在您调用相应的 API 和组件时,会被要求获取对应的权限。
权限名称 | 权限值 | 权限涉及的 API |
---|---|---|
相册读取 | READ_EXTERNAL_STORAGE |
|
相册写入 | WRITE_EXTERNAL_STORAGE | saveToAlbum |
相机 | CAMERA |
|
蓝牙 | BLUETOOTH |
|
麦克风 | RECORD_AUDIO | chooseMedia |
打开小程序
/**
* 通过小程序 ID 打开小程序
*/
fun openMiniAppByAppId(context: Context, appId : String, appVersion: String? = null, params: Bundle? = null)
/**
* 通过 URL 打开小程序
*/
fun openMiniAppByUrl(context: Context, url : String, params: Bundle? = null)
/**
* 通过扫码内容打开小程序
*/
fun openMiniAppByQrcode(context: Context, url : String, params: Bundle? = null)
关于小程序其他 API 的使用方式,请参考 快速入门。
引入能力包
为了使小程序拥有更多的可能性,涂鸦针对一些常用的能力做了包装,并且提供了不同的能力包以供您选择。只需要将需要的能力包集成到工程中,您就可以调用相应能力包中的 API,实现业务功能的开发。
基础能力包
基础能力包,与腾讯微信小程序大部分 API 类似,包括上传、下载、录音、交互、文件操作等 API。建议您默认集成基础能力包。
// 基础扩展能力,与腾讯微信小程序大部分 API 类似
implementation 'com.thingclips.smart:thingsmart-bizbundle-basekit'
// 扫码能力
// 如果是在中国大陆地区扫码,请依赖
// implementation 'com.thingclips.smart:thingsmart-qrcode-scankit:5.8.0-rc.1'
// 如果是在非中国大陆地区扫码,请依赖
// implementation 'com.thingclips.smart:thingsmart-qrcode-mlkit:5.8.0-rc.2'
业务能力包
业务能力包提供了开发过程中一些常用涂鸦业务体系下的 API,包括查询多语言、打开控制面板等。建议您默认集成业务能力包。
implementation 'com.thingclips.smart:thingsmart-bizbundle-bizkit'
家庭管理能力包
家庭管理能力包包括以概念 家庭 为单位的信息查询等能力,是一些涂鸦业务管理的基础条件。家庭 是场景智能执行的最大单位。
implementation 'com.thingclips.smart:thingsmart-bizbundle-homekit'
如需集成家庭管理能力包,在以上能力依赖的基础上,您还需要额外集成 智能生活 App SDK 家庭管理 UI 业务包。
设备控制能力包
设备控制能力包是对设备控制相关能力的封装,能实现控制、监听、移除设备。如有需求,请参考 智能生活 App SDK 设备控制 UI 业务包。
地图能力包
地图能力包是对地图相关能力的封装,包括获取位置、地理围栏等。
implementation 'com.thingclips.smart:thingsmart-bizbundle-mapkit'
// 如果需要接入高德地图,请额外依赖以下组件:
// implementation 'com.thingclips.smart:thingsmart-amap:5.8.1'
// implementation 'com.thingclips.smart:thingsmart-amaplocation:5.3.0-rc.2'
// 如果需要接入 google 地图,请额外依赖以下组件:
// implementation 'com.thingclips.smart:thingsmart-googlemap:5.0.1'
// implementation 'com.thingclips.smart:thingsmart-googlelocation:4.5.0-rc.1'
媒体能力包
媒体能力包是对视频和相机的封装,您在使用 video
和 camera
媒体组件时,需要集成媒体能力包。
implementation 'com.thingclips.smart:thingsmart-bizbundle-mediakit'
配网能力包
配网能力包对配网流程进行了封装,提供配网流程中所涉及的 API。您自建配网流程时,需要集成配网能力包。
implementation 'com.thingclips.smart:thingsmart-bizbundle-playNetkit'
P2P 传输能力包
P2P 传输能力包是对 P2P 建连/传输等能力的封装,包含 P2P 的初始化、连接、上传、下载和销毁等功能。适用于扫地机、门锁和 IPC 等。
implementation 'com.thingclips.smart:thingsmart-bizbundle-p2pkit'
IPC 业务能力包
IPC 业务能力包是对 IPC 业务能力的封装,包含 IPC YUV 播放器、门铃呼叫、云存储签名等功能,适用于 IPC、门锁和扫地机等业务开发。
implementation 'com.thingclips.smart:thingsmart-bizbundle-ipckit'
👉 立即免费领取开发资源,体验涂鸦 MiniApp 小程序开发。