Flutter 工程常见问题

作者: AnRFDev | 来源:发表于2018-06-24 17:22 被阅读76次

    在学习使用flutter的过程中,遇到一些工程上的问题。比如flutter的配置,IDE的设置等等。

    flutter doctor 需要jdk1.8

    需要jdk1.8;如果装的是jdk9及以后的版本,flutter doctor会一直提示你需要升级android SDK

    https://flutter.io/flutter-for-android/#views

    flutter升级遇到网络错误 - Got socket error

    win7双击打开flutter_console.bat,尝试用flutter upgrade升级时,遇到错误。

    E:\sdk_flutter\flutter>flutter upgrade
    Checking Dart SDK version...
    Downloading Dart SDK from Flutter engine 09d05a38912a3c1a906e95099cac9a7e14fae85
    f...
    Unzipping Dart SDK...
    Updating flutter tool...
    Got socket error trying to find package mockito at https://pub.dartlang.org.
    Error: Unable to 'pub upgrade' flutter tool. Retrying in five seconds...
    

    报错:连接不上https://pub.dartlang.org

    用梯子和不用梯子都会报这个错误。查阅官网https://flutter.io/get-started/install/

    https://flutter.io/get-started/install
    官网说中国用户请参考https://github.com/flutter/flutter/wiki/Using-Flutter-in-China

    参考文章建议设置2个环境变量

    export PUB_HOSTED_URL=[https://pub.flutter-io.cn](https://pub.flutter-io.cn/) 
    export FLUTTER_STORAGE_BASE_URL=[https://storage.flutter-io.cn](https://storage.flutter-io.cn/)
    

    我用的是win7,在环境变量 -> 用户变量中添加了这2个变量

    FLUTTER_STORAGE_BASE_URL  https://storage.flutter-io.cn
    PUB_HOSTED_URL   https://pub.flutter-io.cn  
    

    再重新执行flutter upgrade即可

    使用flutter_console.bat时,应该以管理员身份运行

    Android Studio 3.0.1 的flutter项目找不到设备 - no connected device

    尝试运行flutter项目时,出现提示框


    no connected device

    此时注意到as顶部工具栏的右边少了设备框【Flutter Device Selection】


    as顶部栏
    红圈的位置本应该显示当前连接的设备,但是在代码写错一次后,这一栏就消失了。

    错误排查

    尝试清缓存并重启as,那一栏仍然未出现


    清缓存并重启as

    flutter已经升级到当前最新版本。
    在git-bash中运行flutter doctor,并没有发现什么问题。

    $ flutter doctor
    Doctor summary (to see all details, run flutter doctor -v):
    [√] Flutter (Channel beta, v0.5.1, on Microsoft Windows [Version 6.1.7601], locale zh-CN)
    [√] Android toolchain - develop for Android devices (Android SDK 27.0.3)
    [√] Android Studio (version 3.0)
    [√] Connected devices (1 available)
    
    • No issues found!
    

    由此猜测是Android Studio的问题。新建一个flutter工程,观察到设备框又正常了


    新建的flutter工程

    那么原来工程里面为何总是说找不到设备?

    仔细回想了一下,参考flutter教程时,添加了一个images目录,并且修改了pubspec.yaml文件。检查发现assets的缩进弄错了。把缩进改成2个空格后,设备框就出现了。

      # To add assets to your application, add an assets section, like this:
      assets:
        - images/lake.jpg
    

    由此可见,as对pubspec.yaml文件十分敏感。

    相关文章

      网友评论

      • 默默_大魔王:运行的时候提示:Unable to locate a development device; please run 'flutter doctor' for information about installing additional components. 博主遇到过吗?
        手机能检测到。 什么没驱动
        AnRFDev:曾经遇到过类似的问题。试试【重启大法】?
        或者拿一个普通的android工程试试,看是不是手机的问题。
      • Artoria_Pend:我logcat中是连接到真机的。但是在flutter中他找不到真机服务这个怎么处理。
        Artoria_Pend:@RustFisher yijin已经解决了。重启Android studio。把手机连接也关掉重新之后就可以了。
        AnRFDev:这个问题暂时还没遇到。
        【重启大法】关掉电脑上所有的模拟器,重启Android studio,检查真机的开发者选项。

      本文标题:Flutter 工程常见问题

      本文链接:https://www.haomeiwen.com/subject/mmcsyftx.html