• 阿里云物联网APP编程时遇到com.aliyun.teaopenapi错误怎么办?


    摘要:本文介绍编写阿里云物联网APP安卓程序遇到com.aliyun.teaopapi无法Import错误的解决方法。

    本文编程环境是:

     

     调用openapi的时候,需要导入一些在线的库。这些库大多包含“tea”这个单词。

    为什么阿里云的api用tea做代号,尚不可知,但是导入的时候,肯定是需要按照阿里云的名字来导入(有点啰嗦)。

    一般会导入以下这几个库,用于提供与openapi通信的基础功能。

    import com.aliyun.tea.TeaModel;
    import com.aliyun.teaopenapi.models.Config;
    import com.aliyun.teautil.Common;
    

    还有就是添加物联网库的依赖,这个iot20180120库可以通过gradle在线添加,也可以自行下载,离线式添加。

    import com.aliyun.iot20180120.Client;

    离线式添加就是直接将库导入工程

     在线式添加就是不自己下载了,而是指定一个线上的地址让android studio自行下载。

    这些在线的库都包含在external libraries目录下。本质上和离线式包含库没什么区别。最终都是下载到指定的目录中,供程序使用。这也就是为什么android studio工程编译的时候,首先需要gradle,以及为什么最开始gradle的时间非常漫长的原因。当你不明白gradle文件中的那些文件的意义,并且非要所有的都sync时,就会出现gradle时间过长的现象。当然也要考虑网络问题,除了网络问题之外,建议您还是仔细检查以下,自己到底需要这么多的库不。

     话题回到teaopenapi上,要想加载这个库,就要给导入命令明确咱们有这个库。按照刚才分析的,在线加载这个库,那就得指定这个库在网络上哪里才能有。

    方法是在app的gradle文件中(本文不介绍如何找到这个gradle,默认您具备相应的基础知识,如有困难,请私信作者寻求帮助),添加网络指向语句。

    implementation 'com.aliyun:tea-openapi:[0.0.1,0.1.0)'

    怎么添加这个语句呢?

    请打开gradle文件,按照图示位置进行添加。

     请一定要注意,implementation语句中,tea-openapi冒号后面跟着的不是“圆括号”,而是半个”方括号“。

    为什么这样设计,其实是根据gradle的语法来的。

    这意味着一个范围。 方括号”[“表示包括,右半边圆括号”)“表示最多到哪里。

    例如

    compile 'com.facebook.android:facebook-android-sdk:[4,5)'

    这将是以4开头但小于5的任何版本。

    因此4.0,4.1,4.99999.9999将匹配,5.0不会。

    结论:添加语句implementation 'com.aliyun:tea-openapi:[0.0.1,0.1.0)'

    就可以实现正确导入teaopenapi库。

    参考文献:

    Android gradle:版本周围的方括号是什么意思?_136.la

  • 相关阅读:
    14.FreeRTOS 消息缓存 Message Buffer
    SpringCloud 学习笔记总结 (五)
    Python——案例
    【目标检测】使用python代码实现视频转为图片
    Python+opencv实图片定位
    【前端源码解析】mustache 模板引擎核心原理
    windows下安装hbase
    分享一份接口测试项目(非常值得练手)
    Spring复习——day16_SpringMVC_异常处理器
    D. Count GCD(数论/gcd/素数筛/容斥)
  • 原文地址:https://blog.csdn.net/youngwah292/article/details/126395379