快速集成

更新时间:2024-09-03 06:52:50下载pdf

本文介绍如何将安卓版涂鸦 智慧行业 App SDK 集成到您的开发环境中,例如 Android Studio,并介绍初始化方法以及如何启用调试模式。然后,您可以尝试运行 Demo,快速上手智慧行业移动应用开发。

前提条件

  • 开始操作前,确保您已经完成 准备工作

  • 如果您还未安装 Android Studio,访问 安卓官网 进行下载安装。

集成 SDK

步骤 1:创建 Android 工程

在 Android Studio 中新建工程。

步骤 2:配置 build.gradle 文件

在安卓项目的 build.gradle 文件里,添加集成准备中下载的 dependencies 依赖库。

android {
   defaultConfig {
      ndk {
         abiFilters "armeabi-v7a", "arm64-v8a"
      }
   }
   packagingOptions {
      pickFirst 'lib/*/libc++_shared.so' // 多个 AAR(Android Library)文件中存在此 .so 文件,请选择第一个
   }
}

dependencies {
   implementation fileTree(dir: 'libs', include: ['*.aar'])
    implementation 'com.alibaba:fastjson:1.2.32'
    // 行业 App SDK 最新稳定安卓版
    implementation 'com.thingclips.smart:IndustryLinkSDK:2.3.0-indy'
    implementation 'com.squareup.moshi:moshi:1.15.1'
}

在根目录的 build.gradle 文件中,增加涂鸦 Maven 仓库地址,进行仓库配置。

repositories {
   google()
   mavenCentral()
   // 涂鸦 Maven 仓库地址
   maven { url "https://maven-other.tuya.com/repository/maven-commercial-releases/" }
}

步骤 3:集成安全组件

  1. 获取 SDK 页面,勾选一款或多款您需要的 SDK,然后下载对应应用平台的集成资料包。

    快速集成
  2. 将下载后的资料包解压,并将 security-algorithm.aar 放置到工程 libs 目录下,并确认工程 build.gradledependencies 中有以下依赖:implementation fileTree(include: ['*.aar'], dir: 'libs')

    快速集成
  3. 操作第 2 步后,解压产物得到 domain.txt,其内容后续用于 SDK 初始化。

    如果您后续使用了 独立域名服务 或者更新了 独立域名服务,您需要在 获取 SDK 页面重新构建 SDK 产物,并重新完成上述步骤。

步骤 4:设置云开发项目证书签名和获取 ClientId、ClientSecret

  1. 涂鸦开发者平台,找到您创建的 SDK 所关联的云项目。

    快速集成
  2. 编辑上图中类型为 Tuya Smart App SDK (Android) 的 SHA1。

    1. 生成一个 SHA1 密钥。应用证书请参考 Android 官方文档 以及 如何获取 SHA 密钥
    2. 将您的 SHA1 密钥填入的 SHA1 中。
  3. 在上图中,获取 Client ID 以及 Client Secret,后续用于 SDK 初始化。

步骤 5:设置证书签名和获取 Appkey、AppSecret

  1. 涂鸦开发者平台,找到您创建的 SDK。

    快速集成
  2. 配置应用证书。

    1. 生成一个 SHA256 密钥。应用证书请参考 Android 官方文档 以及 如何获取 SHA 密钥
    2. 将您的 SHA256 密钥填入的 证书 中。
  3. 在上图中,获取 AppKeyAppSecret,后续用于 SDK 初始化。

步骤 6:混淆配置

proguard-rules.pro 文件,配置相应混淆配置。

#fastJson
-keep class com.alibaba.fastjson.**{*;}
-dontwarn com.alibaba.fastjson.**

#mqtt
-keep class com.thingclips.smart.mqttclient.mqttv3.** { *; }
-dontwarn com.thingclips.smart.mqttclient.mqttv3.**

#OkHttp3
-keep class okhttp3.** { *; }
-keep interface okhttp3.** { *; }
-dontwarn okhttp3.**

-keep class okio.** { *; }
-dontwarn okio.**

-keep class com.thingclips.**{*;}
-dontwarn com.thingclips.**

# Matter SDK
-keep class chip.** { *; }
-dontwarn chip.**

步骤 7:初始化 SDK

您需要在 Application 的主线程中初始化 SDK,确保所有进程都能初始化。示例代码如下:

public class BaseApplication extends Application {

    @Override
    public void onCreate() {
        super.onCreate();
        //初始化
        new IndustryLinkSDK.Builder(this)
                // 第四步得到的 Client ID 和 Client Secret
                .initialize("clientId","clientSecret")
        // 第三步得到的 domain 信息,填入您期望的域名
                .setHost("domain")
                // 第五步得到的 AppKey 和 AppSecret
                .setDeviceSDKKey("AppKey")
                .setDeviceSDKSecret("AppSecret")
                .setDebugMode(true)
                .build();
    }
}
  • debug 模式下,您可以开启 SDK 的日志开关,查看更多的日志信息,帮助您快速定位问题。
  • release 模式下,建议关闭日志开关。

运行 Demo App

Demo App 演示了智慧行业 App SDK 的开发流程。在开发 App 之前,建议您先按照以下流程完成 Demo App 的操作。

Demo 介绍

Demo App 提供注册登录、设备配网、资产管理等基本功能的示例。行业 App SDK 是涂鸦 SaaS 开发框架产品的重要组成部分。更多详情,参考 GitHub 项目 tuya-android-iot-app-sdk-sample

Demo App 实现了以下功能:

  • 用户管理:账号登录、登出

  • 资产管理:资产查询、选择

  • 设备配网:Wi-Fi 热点配网、Wi-Fi 快连配网、有线配网、Zigbee 子设备配网、扫码配网、NB-IoT 扫码配网

  • 设备管理:设备查询、设备解绑

    快速集成

运行 Demo

  1. 根据您自建工程签名文件中的信息,在工程的 build.gradle 里配置 signingConfigsstoreFile 字段用来指定 xxx.jks 的存储位置。

    快速集成
  2. 替换 app 目录下 build.gradle 文件中的 applicationId 为您的应用包名。

    快速集成
  3. 确认您已经完成 第三步:集成安全组件第四步:设置云开发项目证书签名和获取 ClientId、ClientSecret 以及 第五步:设置证书签名和获取 Appkey、AppSecret

  4. 运行 Demo。