zoukankan      html  css  js  c++  java
  • 4、qq物联SDK介绍及实例讲解


    1.到QQ物联官网http://iot.open.qq.com中下载软件SDK

    S3C2440_20161122_1.6.205_r4288.tar.gz
    注意:
    在后续大家实际开发过程中,可能你会下载到更高的SDK版本,不要紧张。
    新旧SDK改动很少,基本上只需要将库文件替换一下,而软件API接口几乎不变。
    当然高版本的SDK的功能更多。

    2.SDK中文件说明
    include/*.h 软件的数据结构的定义、API接口函数的声明
    lib 库文件,库文件中定义的函数,就是通过h文件中的API接口函数来调用的
    demo_*.c 示例程序


    iconv(编码转换指令)
    -f: 输入的编码格式
    -t:输出的编码格式
    -o:输出的文件名


    3.查看示例程序demo_bind.c,然后讲解QQ物联设备的使用流程

    1)示例程序demo_bind.c

    核心代码:初始化SDK,建立了设备与QQ物联后台的连接
    tx_init_device


    2)设备初始化的时候,

    a.设备名称:百问网有线空气检测仪
    b.设备PID
    c.设备序列号
    d.密钥(保证数据的安全)

    这些信息需要存储到设备内部,比如存储设备nand flash,sd卡等等
    一般通过文件的形式来存放。


    文件名:
    licence.sign.file.txt ----》认证文件
    GUID_file.txt ----》设备序列号
    1000000004.pem ----》公钥(服务器公钥)

    tx_device_info info
    info.device_name = "demo1"; //设备的名字
    info.device_serial_number = guid; //设备序列号
    info.device_license = license; //认证文件
    info.server_pub_key = svrPubkey; //公钥(服务器公钥)
    info.product_id = 1000000004;//设备PID

    tx_device_notify notify

    tx_init_path init_path


    在TXDeviceSDK.h 中:
    接口说明:初始化设备SDK
    tx_init_device(&info, &notify, &init_path);


    接口说明:退出所有设备SDK相关逻辑
    tx_exit_device();

    公钥和私钥
    http://blog.csdn.net/21aspnet/article/details/7249401


    布置作业
    1. 预习:名词解释、添加新设备

    下一节课:
    参考demo_bind.c,
    使用百问网提供的license、key包来实际演示手机QQ与QQ物联设备的连接

    4.使用百问网提供的license、key包来实际演示手机QQ与QQ物联设备的连接

    1)修改config文件
    /etc/qq_iot/demo_bind/config文件的内容如下:
    1700003137
    1700003137.pem
    GUID_file[你的设备序列号SN].txt
    licence.sign.file[你的设备序列号SN].txt

    修改config文件中的设备序列号SN,如设备序列号SN为1700003137000001,则变为:
    1700003137
    1700003137.pem
    GUID_file[1700003137000001].txt
    licence.sign.file[1700003137000001].txt


    在ubuntu系统:

    cp libtxdevicesdk.so /work/nfs_root/qq_iot/lib/

    cp SDKDemo_bind /work/nfs_root/qq_iot/demo_bind/

    mount -t nfs -o nolock 192.168.1.184:/work/nfs_root /mnt


    在开发板系统:
    cp libtxdevicesdk.so /lib

    cp SDKDemo_bind /qq_iot/

    复制密钥文件到如下目录/etc/qq_iot/demo_bind/
    cp key/* /etc/qq_iot/demo_bind/


    [1970-01-01 00:07:08][Main:935][CSProcessor:120]: WLAN connection with tencent iot server [112.90.78.168:443] is setting up
    [1970-01-01 00:07:08][Main:935][CSProcessor:641]: CBICSProcessor::OnConnect fail [112.90.78.168:443]
    [1970-01-01 00:07:08][Main:935][sso.list:200]: OnConnectCallback: bSuccess = 0 IP = 112.90.78.168 Port = 443
    [1970-01-01 00:07:08][Main:935][sso.list:925]: PingNextServer: index = 10 ip = 112.90.78.168 port = 8080 wait time = 8


    设置网管
    route add default gw 192.168.1.1

    设置dns服务器
    cat /etc/resolv.conf


    注意:
    license_key包只能用于一个用户,建议不要对外传播和发布,
    如果其他用户使用后,那么你的设备序列号将可能不能被你自己所绑定使用。

  • 相关阅读:
    php获取OS信息
    坑爹的IE quirk模式
    [转]mysql privileges
    [转]VSFTPD的设置选项
    php性能分析工具xhprof
    php扩展安装
    又是万恶的IE....6
    ASP.NET操作文件(文件夹)简单生成html操作示例
    asp.net文件操作类
    c++/clr与c#的性能比较
  • 原文地址:https://www.cnblogs.com/liusiluandzhangkun/p/8993728.html
Copyright © 2011-2022 走看看