日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

SDK初始化

當您開發自有App,下載并集成SDK后,需要對所有SDK進行初始化。

概述

API Level 8及以上版本SDK的初始化不再需要挨個初始化SDK,而可以使用統一的初始化接口,一次性完成所有的所需SDK的初始化。如果您使用的是API Level 7或以下版本,建議您升級至最新版本API Level 10,詳細請參見SDK升級

統一初始化接口會根據您下載SDK時勾選的SDK配置項,一次性完成以下SDK的初始化。

  • API通道SDK (必選初始化)

  • 賬號及用戶SDK (必選初始化)

  • 身份認證SDK(必選初始化)

  • 長連接通道SDK

  • 物模型SDK

  • 移動應用推送SDK

  • BoneMobile容器SDK

  • Link Visual視頻Media SDK

統一初始化目前只支持帶參數初始化一種方式,詳情如下。

  • 帶參數初始化支持自定義,包括選擇接入類型(中國內地或全球)、是否打開日志,以及定制三方通道離線推送參數等。

SDK初始化

  1. 下載并集成SDK。詳細操作請參見下載并集成SDK

  2. 初始化SDK。

    • 帶參數初始化

      // 初始化參數配置
      IoTSmart.InitConfig initConfig = new IoTSmart.InitConfig()
                      // REGION_ALL表示連接全球多個接入點;REGION_CHINA_ONLY表示直連中國內地接入點
                      .setRegionType(IoTSmart.REGION_ALL)
                      // setProductEnv是API Level 8專用,API Level 9及以上版本使用IoTSmart.setProductScope來區分App是否操作未發布產品,且不再區分測試版與正式版,統一為正式版
                      .setProductEnv(IoTSmart.PRODUCT_ENV_PROD)
                      // 是否打開日志
                      .setDebug(true);
      
              //方案一:用戶傳入 appkey 和 appsecret;用戶需要自行對appkey 和 appsecret進行安全性保存
              IoTSmart.AppKeyConfig keyConfig = new IoTSmart.AppKeyConfig();
              keyConfig.appKey = "appKey";//替換為平臺申請的appKey
              keyConfig.appSecret = "appSecret";//替換為平臺申請的appSecret
              initConfig.setAppKeyConfig(keyConfig);
      
      
              //方案二:用戶傳入 實現了ISecuritySource接口的類;詳情請參考下方《用戶自簽名代碼參考》
              SecurityImpl customSecurityImp=new SecurityImpl();
              initConfig.setCustomSecurity(customSecurityImp);
              
      
              // 定制三方通道離線推送,目前支持華為、小米、OPPO、VIVO
              IoTSmart.PushConfig pushConfig = new IoTSmart.PushConfig();
                pushConfig.xiaomiAppId = "XiaoMiAppId"; // 替換為從小米平臺申請的AppID
                pushConfig.xiaomiAppkey = "XiaoMiAppKey"; // 替換為從小米平臺申請的AppKey        
                pushConfig.oppoAppKey = "oppoAppKey"; // 替換為從OPPO平臺申請的AppKey
                pushConfig.oppoAppSecret = "oppoAppSecret"; // 替換為從OPPO平臺申請的AppSecret
               // 華為與VIVO的推送通道在AndroidManifest.xml里面添加,此處無需配置
      
              initConfig.setPushConfig(pushConfig);
      
              /**
               * 設置App配網列表的產品范圍,PRODUCT_SCOPE_ALL表示當前項目中已發布和未發布的所有產品,
               * PRODUCT_SCOPE_PUBLISHED表示只包含已發布產品,正式發布的App請選擇PRODUCT_SCOPE_PUBLISHED
               */
              IoTSmart.setProductScope(IoTSmart.PRODUCT_SCOPE_PUBLISHED);
      
              // 初始化,App須繼承自AApplication,否則會報錯
              IoTSmart.init(app, initConfig);                   

      三方通道的離線推送的詳細介紹請參見移動應用推送開發指南

  3. 設置國家。

    生活物聯網平臺的云端服務為多區域部署,根據您使用的SDK版本以及config.regionType參數的取值,來判斷是否需要在初始化時設置國家。

    參數取值

    API Level 8及以下

    API Level 9及以上

    REGION_CHINA_ONLY

    不需要

    不需要

    REGION_ALL

    需要

    說明

    此時如果您沒有設置國家,SDK初始化流程會被暫停,且沒法使用SDK的任何API。設置國家的操作請參見歷史文檔

    不需要(此時需在注冊App賬號時設置國家)

  4. (可選)定制登錄注冊頁面。

    • 使用內置賬號:請參照demo App里面的SDKInitHelper.postInit,來定制自己的登錄頁面。請參見賬號及用戶SDK

    • 使用自有賬號:您需要自行開發登錄UI,登錄成功后再授權認證。請參見賬號及用戶SDK

用戶自簽名代碼參考

對于使用自實現簽名的用戶,需要實現ISecuritySource接口,并實現getAppKey和sign方法給出以下代碼參考 。


//實現 ISecuritySource 接口
public class CustomSecurityImp implements ISecuritySource {
    @Override
    public String getAppKey() {
        //appKey
        return "appKey";
    }

    @Override
    public String sign(String input, String signMethod) {
        //需要實現 MD5,HmacSha1和HmacSHA256加密方式,加密方法參考com.aliyun.alink.linksdk.securesigner.util.Utils類?
        String signStr;
        if ("MD5".equals(signMethod)) {
            signStr = Utils.getMD5String(input);
            return signStr.toLowerCase();
        } else if ("HmacSHA256".equals(signMethod)) {
            //出于安全性考慮,建議把加密方法寫在c層并多做幾層轉化,避免被獲取到運行時數據
            signStr = Utils.hmacSha256("AppSecretKey".getBytes(), input.getBytes());
            return signStr.toLowerCase();
        } else {
            signStr = Utils.hmacSha1("AppSecretKey", input);
            return signStr.toLowerCase();
        }
    }
}

SDK API Reference

在使用生活物聯網平臺提供的SDK時,相關的SDK API注釋請參見SDK API Reference