likes
comments
collection
share

解决: flutter 2.0.5 添加第三方依赖后iOS编译报错each_child及安卓编译报超时问题

作者站长头像
站长
· 阅读数 1

1.Mac下用Android Studio运行flutter到iOS环境,在添加第三方依赖库之后编译报错each_child方法找不到

  • 问题原因: each_child是ruby2.5之后的方法
  • 解决方法: 在终端使用rvm install version(要安装的ruby版本号)升级更新(rvm use ruby版本号可以指定使用那个版本的ruby),(如碰到cocoapods找不到的情况,再安装cocoapods即可),还报错的话重启电脑即可
rvm install version
rvm use 2.6.0 //我装的是2.6.0,安装过程不会有其他奇奇怪怪问题👌
rvm list //查看当前电脑拥有的ruby版本

2.Mac下,Android Studio运行flutter项目到安卓模拟器,报Connection timed out,连接超时错误

  • 问题原因:是由于安卓项目中gradle打包工具下载更新超时导致,建议科学上网
  • 解决办法:
  1. 查看flutter项目下/android/gradle/wrapper/gradle-wrapper.properties文件中使用的gradle版本,并使用浏览器下载distributionUrl这个路径的资源文件zip(建议在终端使用curl下载,因为会下载超时,可以使用curl -C-继续断点下载),不要解压;把下载好的zip文件复制到 路径 你的电脑名称/.gradle/wrapper/dists/gradle-xxx(你项目用的版本)/xxxx(随机字符串名字的文件夹)/下,重启Android Studio,打开项目会自动解压刚刚路径下的zip文件
  2. 修改flutter项目下android/build.gradle文件,把相关的镜像路径修改为aliyun的镜像
  3. 启动Android Studio,如果报相关SDK/sdk tools错误,只需要在工具的配置Preferences -> Appearance&Behavior -> System Settings -> Android SDK(快捷键:Command + ,) 在SDK PlatformsSDK Tools中下载安装对应的sdk版本就行
快捷键: "Shift + Command + ." 快速查看/关闭查看 隐藏文件

buildscript {
    ext.kotlin_version = '1.3.50'
    repositories {
//        google()
//        jcenter()
        maven { url 'https://maven.aliyun.com/repository/google'}
        maven { url 'https://maven.aliyun.com/repository/jcenter'}
        maven { url 'http://maven.aliyun.com/nexus/content/groups/public'}
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:4.1.0'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

allprojects {
    repositories {
//        google()
//        jcenter()
        maven { url 'https://maven.aliyun.com/repository/google/' }
        maven { url 'https://maven.aliyun.com/repository/jcenter/'}
        maven { url 'http://maven.aliyun.com/nexus/content/groups/public'}
    }
}