独立域名服务

更新时间:2023-03-29 01:15:18下载pdf

独立域名服务可以给 App 配置自定义的域名。域名配置生效后,您重新构建的 App 以及在已生效独立域名的 App 上新配网的设备,相关的网络请求将会访问您配置的域名,从而提高您 App 服务的独立性。

域名类型

您的 App 及设备在使用时均会产生网络请求,会访问某个域名去传输信息、获取数据等。在涂鸦,有两种域名服务:

  • 默认的域名服务:无需任何配置,使用 SDK 开发的 App 默认会使用涂鸦提供的域名。

  • 独立的域名服务:网络请求将会被转发到您设置的特定域名。本文描述适用于独立的域名服务的设置。

    • 涂鸦 IoT 开发平台自助配置暂不支持使用您已有的域名。如有需要,请 提交工单 联系涂鸦。
    • 若您创建的 App 包含中国大陆地区,因域名需要预先备案,因此暂不支持配置独立域名,仍然使用涂鸦提供的默认域名。

注意事项

App 端

  • 最低版本:独立域名功能仅适用于 v4.0 及以上版本的 智能生活 App SDK

  • 特殊情况:独立域名会应用于 App 主要页面及功能。部分特殊情况,如 H5 页面、特殊的三方页面、您自行配置的链接等,独立域名可能无法生效。若发现未生效的场景,可 提交工单 咨询处理方式。

  • 线上应用:设置独立域名之前,您线上已经在使用中的 App 及设备不会受到任何影响,仍可正常使用。因此,不用担心会对您的用户造成体验上的干扰。

    但需要注意的是,若您已配置的独立域名因到期不续费,导致独立域名失效,则已配置过该独立域名的 App 及设备会无法正常访问。

设备端

设备需要在已经生效的 App 上重新配网后,独立域名才会生效。否则,设备仍然会继续使用原有域名。

有效期

独立域名服务有效期会按年计算。超过有效期后,独立域名会失效,配置该独立域名的 App 及相关设备将无法正常使用。

请您务必在超出有效期前,及时完成续费,避免对您和 App 用户造成影响,包括但不限于 App 停用、已配网设备无法访问或使用、用户投诉及索赔等。若您未能及时续费,而导致的一系列问题和责任,均完全由您承担。查看独立域名有效期请参考下文 第六步:查看有效期和续费

配置流程

开通服务
填写配置信息
等待配置完成
使用配置文件
重新打包应用
及时续费

第一步:开通服务

  1. 登录 涂鸦 IoT 开发平台

  2. 在左侧导航栏,找到 App > App SDK > SDK 开发

  3. 选择目标 SDK 应用。

  4. 在应用的 独立域名服务 页签,单击 去配置 按钮,进入独立域名的配置页面。

    独立域名服务
  5. 阅读并同意《独立域名服务协议》。具体内容,请以实际界面为准。

    独立域名服务

第二步:填写配置信息

在页面中输入您想要的域名,查询并选用可用的域名。目前,仅支持使用 .net.com 结尾的独立域名。

独立域名服务

第三步:等待配置完成通知

  • 通常会在 3—5 个工作日完成配置。涂鸦会通过邮件及短信通知您,请耐心等待。

    独立域名服务
  • 涂鸦会为您注册您设置的独立域名。若因一些特殊情况导致独立域名无法注册,涂鸦会通过短信及邮件通知您。您重新选择其他域名,再次提交即可。

    独立域名服务

第四步:使用独立域名配置文件

配置完成后,会分别生成 iOS 和 Android 平台的独立域名配置文件。您需要将配置文件集成到 SDK 项目工程文件目录中。

  1. 登录 涂鸦 IoT 开发平台

  2. 在左侧导航栏,找到 App > App SDK > SDK 开发

  3. 选择目标 SDK 应用。

  4. 在应用的 独立域名服务 页签,根据您的移动平台,选择下载对应的配置文件。

    独立域名服务
  5. 下载的配置文件原始名称通常为 xxxxx.tcfg。您需要将文件重命名为 t_cdc.tcfg 后,在下一步继续使用文件。

使用 iOS 配置文件

  1. 导入独立域名配置文件。

    将下载好并修改名称后的独立域名配置文件 t_cdc.tcfg 放置到工程根目录中:项目设置 > Target > Build Phases > Copy Bundle Resources

    独立域名服务
  2. 确认智能生活 App SDK 版本。

    请确保您使用的 TuyaSmartHomeKit 为 v4.0.0 或以上版本。

  3. 验证独立域名是否生效。

    在此之前,请确认您已完成 SDK 快速集成 操作。

    您可以通过使用 [TuyaSmartSDK sharedInstance].debugMode = YES,来开启 SDK debug 日志功能。在 App 启动后,在控制台搜索 read custom domain config 日志,来确认是否已成功读取到独立域名配置文件。

    验证正常后,关闭 SDK debug 日志功能,重新打包后,上传到苹果 App Store 应用市场进行分发即可。

常见问题

  • 问题 1: 未能读取到配置文件。

    • 分析:App 启动后控制台输出日志:Your project does not include a domain configuration file. To use a custom domain name, please go to the Tuya IoT Development Platform and download a domain configuration file. 此日志表示并未读取到配置文件。

    • 解决方法:请根据上文 导入 iOS 独立域名配置文件 步骤进行配置。

  • 问题 2:读取到了配置文件,但解析异常。

    如果抛出 t_cdc.tcfg file load failed! 异常,问题原因通常有:

    可能原因 解决方法
    配置文件与 SDK 的秘钥不配套,导致解析失败。 建议确认 App 包名、秘钥是否配置正确。
    配置文件内容损坏,无法解析。 建议重新下载配置文件。
    TuyaSmartNetworkKit 组件版本较落后,请检查此组件版本在 Podfile.lock 里是否 >= 4.0.2 使用 pod update TuyaSmartNetworkKit 命令,更新此组件。

使用 Android 配置文件

  1. 导入独立域名配置文件。

    将下载好并修改名称后的独立域名配置文件 t_cdc.tcfg 放置到 assets 目录。

    独立域名服务
  2. 确认 智能生活 App SDK 版本。

    请确保您使用的 implementation 'com.tuya.smart:tuyasmart: xxx 为 v4.0.0 或以上版本。

  3. 验证独立域名是否生效。

    在此之前,请确认您已完成 SDK 快速集成 操作。

    您可以通过 TuyaHomeSdk.setDebugMode(true);,来开启 SDK debug 日志功能。在 App 启动后,在控制台搜索 read custom domain config 日志,来确认 是否已成功读取到独立域名配置文件。

    验证正常后,关闭 SDK debug 日志,重新打包后,分发到应用市场即可。

常见问题

  • 问题 1:未能读取到配置文件。

    • 分析:App 启动后,控制台输出日志:Your project does not include a domain configuration file. To use a custom domain name, please go to the Tuya IoT Development Platform and download a domain configuration file. 此日志表示并未读取到配置文件。

    • 解决方法:请根据 导入 Android 独立域名配置文件 步骤进行配置。

  • 问题 2:读取到了配置文件,但解析异常。

    使用 AssetsConfig 过滤日志,出现 t_cdc.tcfg file load failed! 异常。问题原因通常有:

    可能原因 解决方法
    配置文件与 SDK 的秘钥不配套,导致解析失败。 建议确认 App 包名、签名文件、秘钥是否配置正确。
    配置文件内容损坏,无法解析。 建议重新下载配置文件。

第五步:重新打包 App

配置完成后,重新打包 App,独立域名才能生效。

第六步:查看有效期和续费

独立域名服务 页面中,您可以查看独立域名有效期信息以及进行续费。

独立域名服务

若您在有效期到期时没有及时续费,会导致您使用该独立域名的 App 及设备无法正常访问,会对您及您的用户带来严重影响。具体信息,参考上文 有效期 章节。

涂鸦会在有效期到期前,向您发送邮件或短信通知进行提醒。

域名匹配规则

系统会使用您选择的独立域名,自动生成并配置各数据区以及各项服务所需的二级或三级域名。基本规则为:服务前缀-数据区.自定义域名

例如,若您选择的独立域名为 customdomain.com,则各区生效的域名为:

  • 美国区:服务前缀-us.customdomain.com
  • 欧洲区:服务前缀-eu.customdomain.com
  • 印度区:服务前缀-in.customdomain.com

服务前缀是各项服务的标识信息,您可以不用关心。