如何创建商用照明 App SDK 应用?

news2024/11/16 6:49:22

商用照明 App SDK 是专为照明行业的物联网应用提供的移动端开发工具。通过商用照明 SDK,大家可以形成完整的商用照明物联网控制系统,多协议兼容,完美满足绿色建筑的设备管理及能源管理要求。

什么是涂鸦商用照明?

涂鸦商用照明解决方案 是一套完整的物联网控制系统,适用于新装和存量的商用照明市场,为其提供从设备端到软件控制端以及施工端的一套完整方案服务。通过设备管理、能源管控、人因照明等实现绿色建筑与健康建筑。

涂鸦商用照明解决方案为客户后期的产品维护与运营提供数字化、可视化的管理平台,帮助客户实现商业智能化,降低管理成本。

方案优势

涂鸦商用照明解决方案的六大核心优势:

  • 低成本的即开即用方案
  • 丰富的物联能力
  • 快速增长的强大生态系统
  • 可持续的增值服务
  • 数字化全球项目运营管理
  • 金融级网络数据安全

业务模式

品牌商账号下只创建一个商户账号,因此又称为 单一 SaaS 商户模式,通过此账号来创建项目 (支持创建多个项目)与管理项目下设备。商户下的项目数据共享,通过权限分配来管理项目内不同成员的使用范围。

此模式适用于为单个商户落地项目的开发者。

名词解释

  • 账号(User)

    • 用户通过手机号码、邮箱注册并登录后,即可成为涂鸦商用照明体系的一个账号。
  • 项目(Project)

    • 项目为挂载在某一账号下的可独立操作的单元,区域和设备等必须要挂载在某一项目下才可进行操作。
    • 一个账号下可以有不定数量的项目,新用户在注册登录后默认是没有项目的,需进行项目的创建流程后才可进行项目维度的相关操作。
  • 区域(Area)

    • 区域是挂载在某一项目下的可独立操作的单元

    • 区域可以有不定数量的子区域。

    • 最小层级的区域无法创建子区域。

    • 区域下可以挂载不定数量的设备或群组等。

    • 未分区(Non-assigned Area)

      • 未分区是挂载在项目下的一种特殊区域类型,是一直存在且一定存在的区域类型。
      • 未分区只会在一级区域列表中存在,在子区域列表中不会出现。
      • 特定情况下,如设备配网后,未加入到指定区域下时,设备会默认存放在未分区区域下。
      • 删除某一区域时,该区域下的设备不会被删除,而是会被转移到未分区区域下。
    • 公共区域(Public Area)

      • 公共区域是挂载在某一区域下的特殊子区域,一个区域下最多只存在一个(也可能是不存在)公共区域。
      • 公共区域是非人为创建的特殊区域类型,会在特定情况下产生或消失。
      • 公共区域可以理解为父区域去除人为创建的子区域后的共享区域,为父区域与子区域的差集区域。

      区域、子区域、公共区域关系如图所示:

  • 群组(Group)

    • 群组是一个或多个设备按照一定规则的聚合体,通过对群组的控制以达到群控该群组下设备的目的。
    • 组合群组是指一个或多个不同类型的小群组的聚合体,通过对组合群组的控制以达到群控该组合群组内的小群组的目的,进而控制所有小群组中的设备。
    • 涂鸦商用照明SDK提供组合群组的创建、编辑、控制等能力,暂不支持对单个小群组进行操作。
    • 组合群组附属于区域维度下,没有区域时无法创建组合群组。

账号、项目、区域、群组之间的关系如图所示:

创建 SDK 应用

  1. 在 涂鸦 IoT 平台 中 App 工作台 中点击 App 边栏下的 SDK 开发,点击创建 App

  2. 选择 App SDK 类型。

  3. 填写 App 相关信息,点击确认

    • 应用名称:填写 App 名称。
    • iOS 应用包名:填写 iOS App 包名(建议格式:com.xxxxx.xxxxx)。
    • 安卓应用包名:填写安卓 App 包名(两者可以保持一致,也可以不一致)。
    • 渠道标识符:不是必填项,如果不填写,系统会根据包名自动生成。
  4. 可以根据实际需求选择需要的选择方案,支持多选,然后根据 Podfile 和 Gradle 进行 SDK 的集成。

  5. 获取密钥
    点击获取密钥,获取 SDK 的 AppKey、AppSecret、安全图片等信息。

  1. IoT后台创建 App 成功后,将创建的应用的包名提供给到涂鸦,并由商务转交相关信息给云端进行客户项目的创建等相关配套操作。
  2. 安卓端从1.9.7版本开始,需要设置SHA256。

以上步骤完成后,SDK 才可正常使用。

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

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

相关文章

python基础语法(1)

专栏:python 每日一句:人生,无非只有三天,昨天,今天,明天。昨天很长,说不清有多少天,但不管有多少天,不管是受到挫折,还是取得辉煌,都只能代表过去…

Feign

文章目录Http客户端Feign1、Feign替代RestTemplate1.1、RestTemplate方式调用存在的问题1.2、Feign介绍1.3、定义和使用Feign客户端2、Feign的自定义配置2.1、修改日志级别3、Feign的性能优化3.1、Feign的性能优化-连接池配置4、Feign的最佳实践4.1、方式一(继承&am…

TypeScript类型 : any,unknown

1.any类 在某些情况下,我们确实无法确定一个变量的类型,并且可能它会发生一些变化,这个时候我们可以使用any类型(类似 于Dart语言中的dynamic类型)。 any类型有点像一种讨巧的TypeScript手段: 1.我们可以…

【23届秋招总结】本科小学弟成功签约滴滴后端开发offer

大家好!我是路飞,最近工作太忙啦,断更很久,今天给大家分享一位本科23届小学弟的秋招历程~ 在今年整体上就业困难,各大公司校招HC收缩的情况下,这位小学弟也历经坎坷成功拿到了滴滴后端开发岗位…

【安卓学习笔记】安卓的事件处理

安卓提供了两种方式的事件处理:基于回调的事件处理和基于监听的事件处理。 基于监听的事件处理 基于监听的事件处理一般包含三个要素,分别是: Event Source(事件源):事件发生的场所,通常是各个…

c++11 标准模板(STL)(std::forward_list)(六)

定义于头文件 <forward_list> template< class T, class Allocator std::allocator<T> > class forward_list;(1)(C11 起)namespace pmr { template <class T> using forward_list std::forward_list<T, std::pmr::polymorphic_…

动态内存管理详解(malloc、calloc、realloc)

文章目录 一、什么是动态内存 二、为什么要存在动态内存分配 三、动态内存函数的介绍 3、1 malloc和free的介绍 3、2 calloc的介绍 3、3 reallco的介绍 四、常见的动态内存错误 4、1 对NULL指针的解引用操作 4、2 对动态开辟空间的越界访问 4、3 对非动态开辟内存使用free释放 …

rcu锁原理以及rcu example学习

rcu参考资料&#xff1a; https://airekans.github.io/c/2016/05/10/dive-into-liburcu https://lwn.net/Articles/262464/ https://cloud.tencent.com/developer/article/1684477 https://www.cnblogs.com/LoyenWang/p/12681494.html userspace rcu: https://github.com/urcu…

PHP 过滤器

PHP 过滤器用于验证和过滤来自非安全来源的数据&#xff0c;比如用户的输入。什么是 PHP 过滤器&#xff1f;PHP 过滤器用于验证和过滤来自非安全来源的数据。测试、验证和过滤用户输入或自定义数据是任何 Web 应用程序的重要组成部分。PHP 的过滤器扩展的设计目的是使数据过滤…

目标检测、实例分割、旋转框样样精通!详解高性能检测算法 RTMDet

1. 简介 近几年来&#xff0c;目标检测模型&#xff0c;尤其是单阶段目标检测模型在工业场景中已经得到广泛应用。对于检测算法来说&#xff0c;模型的精度以及运行效率是实际使用时最受关注的指标。因此&#xff0c;我们对目前的单阶段目标检测器进行了全面的改进&#xff1a…

超参数、划分数据集、

目录1.超参数(hyperparameters)参数(Parameters)&#xff1a;&#xff0c;&#xff0c;&#xff0c;&#xff0c;&#xff0c;...超参数&#xff1a;能够控制参数W,b的参数&#xff0c;是在开始学习之前设置的参数。比如&#xff1a;学习率、梯度下降循环的数量#iterations、隐…

【阶段三】Python机器学习23篇:机器学习项目实战:XGBoost分类模型

本篇的思维导图: XGBoost算法可以说是集成学习方法中的王牌算法。在著名的数据挖掘比赛平台Kaggle上,众多获胜者都使用了XGBoost算法,它在绝大多数回归问题和分类问题上的表现都十分不错。 XGBoost算法的核心思想 XGBoost算法在某种程度上可以说是GBDT算法…

蓝桥杯:超级质数

目录 题目链接 问题描述 答案提交 本题答案为&#xff1a;373。 思路&#xff1a; 模拟代码(Java)&#xff1a; 问题描述 如果一个质数 P 的每位数字都是质数, 而且每两个相邻的数字组成的两位 数是质数, 而且每三位相邻的数字组成的三位数是质数, 依次类推, 如果每相 邻…

【Node.js实战】一文带你开发博客项目之日志(文件读写、stream流、写日志)

个人简介 &#x1f440;个人主页&#xff1a; 前端杂货铺 &#x1f64b;‍♂️学习方向&#xff1a; 主攻前端方向&#xff0c;也会涉及到服务端 &#x1f4c3;个人状态&#xff1a; 在校大学生一枚&#xff0c;已拿多个前端 offer&#xff08;秋招&#xff09; &#x1f680;未…

《码出高效:java开发手册》八 -单元测试

前言 这章内容主要是讲单测&#xff0c;单元就是指一个程序分的最小单位&#xff0c;一般是类或者方法&#xff0c;在面向对象编程里&#xff0c;一般就是认为方法是最小单位&#xff0c;单测是程序功能的基本保障&#xff0c;在软件上线前非常重要的一环 正文 单测的好处&a…

_Linux多线程-死锁Linux线程同步篇

文章目录1. 死锁死锁四个必要条件避免死锁避免死锁算法&#xff08;了解&#xff09;2. Linux线程同步线程同步出现的背景条件变量同步概念与竞态条件条件变量函数1. 初始化2. 销毁3. 等待条件满足4. 唤醒等待小结测试实验1. 死锁 死锁是指在一组进程中的各个进程均占有不会释…

linux服务器CPU飙高排查

文章目录前言一、第一步 top二、根据pid查找具体线程2.根据pid找到16进制3. 根据进程和线程查找原因总结前言 系统cpu飙高,尤其对于后端人员来说,其实应该学会排查,这样也算是综合能力的体现;那么当出现了cpu严重飙高的时候怎么排查呢? 一、第一步 top 直接在问题服务器输入…

如何系统地学习 C++ 语言?

C 最大的缺点就是语法复杂&#xff0c;而且难学难精。 学习 C 语言也许一本 K&R 的《C程序设计语言》就够了&#xff0c;但是在 C 世界里&#xff0c;找不到这样一本书。在这个爱速成的年代&#xff0c;大家可能耐不住寂寞花很长时间去学习一门语言&#xff0c;所以可以看…

车载以太网 - DoIP电源模式 - 07

DoIP电源模式&节点状态&激活检查这3块内容没有太大的逻辑性可言,主要是概念性内容介绍,所以本篇内容可能会略显枯燥,不过我回尽量完整的把这几块内容介绍清晰,为后面的测试用例设计做好铺垫,方便大家在看完文章后,更加快速的提取知识点,并完成测试设计。 诊断电…

回溯法--图的m着色问题--子集树

问题描述 给定无向连通图和m种不同的颜色&#xff0c;用这些颜色为图G的各个顶点着色&#xff0c;每个顶点有一种颜色 是否有一种着色方法&#xff1f;使得图G中每条边的两个顶点有不同的颜色 这个问题就是图的m可着色判定问题 色数&#xff1a;如果有一个图最少需要m种颜色…