title: 阿里云IoT设备接入跨平台SDK(基于mqtt)
tags:
- 物联网开发
- MQTT
- 阿里云
categories: - 物联网
本文主要是介绍 自己实现的 阿里云IoT设备接入跨平台SDK,这个SDK提供跨平台的支持,
在windows上是基于VS2013 Release版本编译
*nix上基于简单的Makefile编译
支持交叉编译
特别注意
代码中使用的 阿里云设备三元组是个人提供的一个三元组,请自行替换成自己设备对应的三元组
// 最后一个字段是表示,阿里云的设备是高级设备还是普通设备
IotDeviceIdentity gIdentities[] = {
{ "a1onpCjBsoK", "bim_music_control_btn1", "jOx2X75wVuTzannfUOMzrLTiOBkhiZSr", true }
};
代码下载地址
https://github.com/rainbow-martin/aliyun_iot_device_sdk
第三方依赖
库名 | 下载地址 |
---|---|
mqtt库 | https://github.com/eclipse/paho.mqtt.c |
jsoncpp库 | https://github.com/open-source-parsers/jsoncpp |
目录结构
目录结构 | 注释 |
---|---|
3rd/ | 第三方依赖性,jsoncpp和paho mqtt |
baselib/ | 基础类库,用于log记录等常见工具类 |
builall.sh* | *nix 系统编译脚本 |
iot_device_async/ | 异步mqtt接入iot 设备 |
iot_device_sync/ | 同步mqtt接入iot 设备 |
pre_make.sh | 嵌入式设备(如ARM)编译器选择,用于交叉编译 |
win32/ | windows vs2013编译工程 |
- -
windows系统编译版本
WIN32
编译环境: VS2013
编译工程: win32mytest.sln
编译方法:打开工程,选择Release-Win32, 即可进行编译
注意:需要配置$(OpenSSLDir) 作为环境变量
*nix系统编译版本
*nix
./buildall.sh 即可
编译产物 在bin目录
交叉编译编译版本
参考pre_make.sh,目前是arms树莓派的交叉编译环境
变编译之前运行
source pre_make.sh