机友分享 | 导入机智云Android开源项目的正确姿势-Arduino中文社区 - Powered by Discuz! Archiver

机智小子 发表于 2020-9-28 11:07

机友分享 | 导入机智云Android开源项目的正确姿势

以下文章来源于小雨编程 ,作者小雨tt

“使用机智云AIoT平台支持项目自生成APP源码,即可轻松解决Android开源项目啦,”开发者下载源码后,只需要优化UI和设计设备控制界面控制逻辑,源码的控制页面编写了机智云SDK控制设备的标准流程,APP源码二次开发过程中只需按照该流程进行相关代码的优化即可快速完成针对自身产品的智能控制APP。
因此只要我们将源码工程文件成功导入Android Studio,那么我们便可以自由定制我们的应用程序,那么如何正确导入到Android Studio中,编译成功并在真机上运行呢?

1项目下载在机智云官网,我们定义好数据点后,在服务->应用开发子菜单中,下载工程文件。机智云APP代码自动生成服务介绍:http://docs.gizwits.com/zh-cn/UserManual/devApp.htmlhttp://club.gizwits.com/data/attachment/forum/202009/28/104848icaz8f6o586vrkou.jpg.thumb.jpg

2方法
由于本地环境与开源工程文件中不同,理论上我们把开源工程文件中的环境修改成和我们本地相同的就可以顺利导入了。
为了正确修改开源工程配置文件,我们可以新建一个本地工程文件夹,对照参考。
http://club.gizwits.com/data/attachment/forum/202009/28/104919brz4jcf4bjkb9scj.png.thumb.jpg第一步修改根目录下的build.gradle文件http://club.gizwits.com/data/attachment/forum/202009/28/104956wepj60jjvzwe035j.png.thumb.jpg
将开源工程项目中的build.gradle与本地工程保持一致。

第二步修改gradle/wrapper文件夹里gradle-wrapper.properties配置文件http://club.gizwits.com/data/attachment/forum/202009/28/105035a6s870knjwwjoun8.png.thumb.jpg将distributionUrl中的gradle版本保持与本地项目一致;http://club.gizwits.com/data/attachment/forum/202009/28/105056l6mjleliufp369de.png.thumb.jpg
第三步我们再修改app目录下的build.gradle文件
这时候开源项目与我们的本地项目区别就有点大了,我们只需择其重点进行修改
http://club.gizwits.com/data/attachment/forum/202009/28/105118nbuwmvh17zeia3ew.png.thumb.jpg
将机智云版本的compileSdkVersion,buildToolsVersion,minSdkVersion,targetSdkVersion与本地保持一致;这里由于自2018年底开始Android已经抛弃了compile,所以这里我们需要将compile换成implementation,同时将com.android.support:design,com.android.support:appcompat换成与本地版本相一致的28.0.0版本下面是修改之后的版本:http://club.gizwits.com/data/attachment/forum/202009/28/105136ydr909194ax747x7.png.thumb.jpg

第四步导入项目再配置打开AndroidStudio修改 基本的配置参数已经修改的差不多了,这时我们导入项目试一试,打开Android Studio欢迎界面,点击Open an existing Android Studio project;
http://club.gizwits.com/data/attachment/forum/202009/28/105205dzumg2vukkxm5yxk.png.thumb.jpg
在工程界面工具栏,点击编译按钮,这时候可能还会报一些小错误,比如:http://club.gizwits.com/data/attachment/forum/202009/28/105229sge6g1i7u7dp08d0.png.thumb.jpg
它表示最小开发版本不需要在清单文件中解释,我们只需点击蓝色下划线,跳转到如下界面。http://club.gizwits.com/data/attachment/forum/202009/28/105543bsaq1lx3ir34zim4.png.thumb.jpg点击方框内容,打开清单文件http://club.gizwits.com/data/attachment/forum/202009/28/105257q5gudyjn6kx2nvpz.png.thumb.jpg删除改行,再Try Again重新同步一下gradle工程。
第五步修改部分过时的函数点击小锤子重新编译一下工程,此时仍会报如下错误:http://club.gizwits.com/data/attachment/forum/202009/28/105437vkwwypiwz94m4mf2.png.thumb.jpg这里报错(找不到符号变量MAXRIX_SAVE_FLAG) 这是因为我们的sdk版本较高,新的sdk已经对之前老版本里的方法进行了修改,调用canvas.save(Canvas.CLIP_SAVE_FLAG);方法编译器报错,我们只需要save()方法里的参数删除即可,直接调用canvas.save()方法就编译通过了。此时,我们的APP已经可以运行啦!http://club.gizwits.com/data/attachment/forum/202009/28/105416lt1ll5zntrty4y59.png.thumb.jpgend..这篇教程是以使用机智云AIoT平台的源码为例,如何正确的编译项目。其实对于大多数网上的Android开源项目都可以用这种方法来导入。错过了#秋天的第一杯奶茶,那我们一起来敲代码吧
今日份推荐,安排加购鸭..
中移Cat.1 4G DTU模组ML302-GC211支持OTA免开发快速接入机智云http://club.gizwits.com/data/attachment/forum/202009/28/105400ogmgtcijo6hgiz54.jpg.thumb.jpg



页: [1]
查看完整版本: 机友分享 | 导入机智云Android开源项目的正确姿势