关闭视频

【技巧】将机智云官方APP源代码无误导入AndroidStudio

发表于:2021年08月18日 18:47更新于:2024年05月05日 03:30

新手在使用机智云APP代码自动生成服务后,将自动生成的代码倒入AS容易出现报错,容易误以为自己操作失误,其实一般都是版本的问题,这个很好解决。让我们来试试吧。

 

 

下载源码


机智云进入开发者中心,点击对应的产品➡服务➡应用开发这里即可下载机智云APP的源码。下载完成后可直接将此文件夹单独移出,作为整个工程的文件夹。



导入工程


►打开project,File➡new➡Import project

►导入后Sync必定报错,别慌!

因为机智云下载而来的程序大概率API版本、gradle版本和gradle插件版本跟我们下载Android Studio自带的不一样,可以重新下载但这很慢很慢,可以直接改!

新建一个可在该电脑改AndroidStudio运行无误的project,称为demo。

 

 

修改程序


1、build gradle(Project:xxx)文件里

►修改gradle plugin插件版本,在机智云project的相同位置中把gradle插件版本修改为这个版本即可。

 

►加两处Google(),分别在buildscript函数和allprojects函数中加入google()语句。

buildscript

{

     repositories

     {

         jcenter()

         google()

      }

}

 

allprojects

{

      repositories 

     {

          jcenter()

         google()

      }

 }

 

2、buildgradle(Module:xxx)文件里

改为3.0版本以上的语句,gradle插件3.0版本及以上的implementation代替了 compile ,testImplementation 代替了testCompile,androidTestImplementation 代替androidTestCompile 。因此要做如下修改。

compile fileTree(dir: 'libs', include:['*.jar'])

testCompile 'junit:junit:4.12'

               ⬇  ⬇

implementation fileTree(dir: 'libs',include: ['*.jar'])

testImplementation 'junit:junit:4.12'

 

3、gradle-wrapper.properties(GradleVision)文件里

修改gradle版本,即在机智云project的相同位置中把gradle版本修改为Demo里的这个版本即可。


4、mainfest.xml文件里

将左上角的Android切换为Project,按途径app➡src➡main➡AndroidMainfest.mxl,打开改文件并去掉里面的最小版本定义。

 

<uses-sdkandroid:minSdkVersion="15" android:targetSdkVersion="25"/>

                    ⬇  ⬇(注释)

<!--   <uses-sdk android:minSdkVersion="15"android:targetSdkVersion="25" />-->

 

改到这里,先编译一下,然后,再次报错了!

◆ Error:The specifiedAndroid SDK Build Tools version (25.0.0) is ignored, as it is below the minimumsupported version (28.0.3) for Android Gradle Plugin 3.5.2.

◆ 解决方法:也就是说Gradle Plugin 插件版本3.5.2最低只支持SDK28,而这个程序里的版本是SDK25的。因此我们需要下载一个高于等于SDK28的编译工具。

1)菜单栏➡Tool➡SDK Manager➡勾选要下载的版本然后Apply,弹出的页面选择OK即可下载。

下载完毕后,菜单栏➡File➡Project Structure➡Modules➡Properties里的Compile Sdk Version和Build Tools Version里选择对应的版本。

2)build gradle(Module:xxx)文件里将TargetVersion改为相应的版本。

 

再编译,再次报错!

 

◆ 错误: 找不到符号

符号: 变量 MATRIX_SAVE_FLAG

位置: 类 Canvas

◆ 解决方法:因为变量 MATRIX_SAVE_FLAG已在API 28中被删除,因此要进行替换。双击错误便能到达错误所在地

再编译

canvas.save(Canvas.MATRIX_SAVE_FLAG);         

        ⬇  ⬇   

canvas.save();


再再编译,是极度舒适的画面了!

6.png