通用SDK用来帮助所有SDK做初始化和统一设置,比如设置语言、设置国家等。

初始化

初始化前需确保已集成安全图片,初始化的操作请参见SDK初始化

设置国家相关

  1. 显示国家、地区列表页面
    • 调用默认页面
      #import <IMSIotSmart/IMSIotSmart.h>
      // 使用SDK提供的国家选择UI
          [[IMSIotSmart sharedInstance] showCountryListInNavigationController:self.navigationController callback:^(IMSIotCountry * _Nullable country) {
              // 使用SDK提供的国家选择UI,选中某个国家时的回调
              NSLog(@"selcted country:%@",country);
          }];
    • 自定义UI页面
      #import <IMSIotSmart/IMSIotSmart.h>
      [[IMSIotSmart sharedInstance] getCountryList:^(NSError * _Nullable error, NSArray<IMSIotCountry *> * _Nullable countryList) {
              // 返回的countryList为原始数据
              // 您可以基于这些原始数据设计UI呈现国家列表
          }];
  2. 设置国家
    #import <IMSIotSmart/IMSIotSmart.h> 
    //基于API Level 9及以上版本SDK开发的App,切换国家时不需要重启App,即IMSIotSmart内部不需要实现重启逻辑
    //如果您没有其他业务依赖该逻辑,可忽略needRestartApp参数的配置
    [[IMSIotSmart sharedInstance] setCountry:_selectCountry callback:^(BOOL needRestartApp) {
            
      }];

设置多语言

生活物联网平台目前支持中文(zh-CN)、 英文(en-US)、法文(fr-FR)、德文(de-DE)、日文(ja-JP)、韩文(ko-KR)、西班牙文(es-ES)、俄文(ru-RU)、意大利文(it-IT)、印地文(hi-IN)、葡萄牙文(pt-PT)、波兰文(pl-PL)、荷兰文(nl-NL)等十三种语言。

  • 设置语言

    统一切换API网关、用户账号、推送、插件等SDK的语言环境。

    #import <IMSIotSmart/IMSIotSmart.h>
    NSString *language = @"zh-CN";
    [[IMSIotSmart sharedInstance] setLanguage:language];
  • 获取当前语言

    获取API网关、用户账号、推送、插件等SDK的语言环境。

    #import <IMSIotSmart/IMSIotSmart.h>
    // 查看SDK当前设置的语言,如果您没有设置过语言,此处会返回当前系统语言
    NSString *language = [[IMSIotSmart sharedInstance] getLanguage];

调试未发布产品

设置App配网列表的产品范围,取值如下。

  • PRODUCT_SCOPE_ALL:表示当前项目中已发布和未发布的所有产品。
  • PRODUCT_SCOPE_PUBLISHED:表示只包含已发布产品。正式发布的App请选择PRODUCT_SCOPE_PUBLISHED
#import <IMSIotSmart/IMSIotSmart+scope.h>
[[IMSIotSmart sharedInstance] configProductScope:PRODUCT_SCOPE_ALL];

设置日志开关

设置日志开关,请参见日志SDK

获取App当前连接的服务器ID

当自有App可以连接多个业务服务器时,为了App最佳的体验效果,可以根据当前登录服务器来选择业务服务器。此时,您可以通过以下接口获取App当前连接的国家(即登录服务器ID),从而帮助您选择其他业务服务器最快连接的区域。

[[IMSIotSmart sharedInstance]  shortRegionId];
说明
  • 该接口须升级至1.2.2及以上版本才可见。升级代码如下。
    pod 'IMSIotSmart', '1.2.2'
  • 该接口必须要在App已登录状态下调用,否则没法获取准确的服务器ID。

平台返回服务器ID的值如下。

  • 0:上海
  • 1:新加坡
  • 3:美国
  • 4:德国

SDK API Reference

使用生活物联网平台提供的SDK时,SDK API的相关注释请参见SDK API Reference