您可以使用物联网平台提供的Android Link SDK,搭建设备与物联网平台的双向数据通道。本文介绍使用Android Link SDK需进行的SDK工程配置。
配置SDK
在Android工程根目录下的基础配置文件(
build.gradle
或settins.gradle
)中,加入阿里云仓库地址,配置仓库。maven { url "https://maven.aliyun.com/nexus/content/repositories/releases/" }
在对应模块(例如App)的
./build.gradle
文件中,添加依赖,下载SDK。说明如果是旧版本SDK需要升级,请先删除
.gradle
文件中的下述坐标:com.aliyun.alink.linksdk:iot-linkkit
com.aliyun.alink.linksdk:iot-device-manager
com.aliyun.alink.linksdk:public-channel-core
implementation ('com.aliyun.alink.linksdk:lp-iot-linkkit:1.7.3.8')
AndroidX特性支持
对于支持AndroidX特性的项目(模块的build.gradle
中包含关键字androidx),需要在gradle.properties
文件中,配置如下内容:
android.enableJetifier=true
相关API
Android Link SDK的API说明,请参见LinkKit API。
获取Demo
您可以下载物联网平台提供的Android Link SDK Demo,将基于Android系统的设备快速接入物联网平台。
重要
下载本Demo默认您同意本软件许可协议。
混淆配置
在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.**{*;}