您可以使用物联网平台提供的Android Link SDK,搭建设备与物联网平台的双向数据通道。本文介绍使用Android Link SDK需进行的SDK工程配置。

配置SDK

  1. 在Android工程根目录下的基础配置文件(build.gradle或settins.gradle)中,加入阿里云仓库地址,配置仓库。
    maven {
                url "https://maven.aliyun.com/nexus/content/repositories/releases/"
            }         
  2. 在对应模块(例如app)的./build.gradle文件中,添加依赖,下载SDK。
    implementation('com.aliyun.alink.linksdk:iot-linkkit:1.7.2')
    implementation('com.aliyun.alink.linksdk:public-channel-core:0.7.7.1')
    implementation('com.aliyun.alink.linksdk:iot-device-manager:1.7.5.2')

AndroidX特性支持

对于支持AndroidX特性的项目(模块的build.gradle中包含关键字androidx),需要在gradle.properties文件中,配置如下内容:

android.enableJetifier=true

混淆配置

在Android工程根目录下的混淆配置文件./Demo/app/proguard-rules.pro中,完成混淆配置。

# linkkit API
-keep class com.aliyun.alink.**{*;}
-keep class com.aliyun.linksdk.**{*;}
-dontwarn com.aliyun.**
-dontwarn com.alibaba.**
-dontwarn com.alipay.**
-dontwarn com.ut.**

# keep native method
-keepclasseswithmembernames class * {
    native <methods>;
}

# keep netty
-keepattributes Signature,InnerClasses
-keepclasseswithmembers class io.netty.** {
    *;
}
-keepnames class io.netty.** {
    *;
}
-dontwarn io.netty.**
-dontwarn sun.**

# keep mqtt
-keep public class org.eclipse.paho.**{*;}

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

# keep gson
-keep class com.google.gson.** { *;}

# keep network core
-keep class com.http.**{*;}
-keep class org.mozilla.**{*;}

# keep okhttp
-dontwarn okhttp3.**
-dontwarn okio.**
-dontwarn javax.annotation.**
-dontwarn org.mozilla.**

-keep class okio.**{*;}
-keep class okhttp3.**{*;}
-keep class org.apache.commons.codec.**{*;}

-keep class com.aliyun.alink.devicesdk.demo.FileProvider{*;}
-keep class android.support.**{*;}
-keep class android.os.**{*;}           

获取Demo