新手在使用機智云APP代碼自動生成服務后,將自動生成的代碼倒入AS容易出現報錯,容易誤以為自己操作失誤,其實一般都是版本的問題,這個很好解決。讓我們來試試吧。
一,下載源碼
機智云進入開發者中心,點擊對應的產品➡服務➡應用開發這里即可下載機智云APP的源碼。
下載完成后可直接將此文件夾單獨移出,作為整個工程的文件夾。

二,導入工程
1、打開project
File➡new➡Import project
2、導入后Sync必定報錯,別慌!

因為機智云下載而來的程序大概率API版本、gradle版本和gradle插件版本跟我們下載Android Studio自帶的不一樣,可以重新下載但這很慢很慢,可以直接改! 新建一個可在該電腦改AndroidStudio運行無誤的project,稱為demo。
三,修改程序
1、build gradle(Project:xxx)文件里(1)修改gradle plugin插件版本
在機智云project的相同位置中把gradle插件版本修改為這個版本即可
(2)加兩處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中被刪除,因此要進行替換。雙擊錯誤便能到達錯誤所在地 再編譯
|