十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
记一次Flutter安卓模拟器在mac电脑上报错:
成都创新互联是专业的郑州网站建设公司,郑州接单;提供网站建设、成都网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行郑州网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
DioError [DioErrorType.other]: SocketException: Failed host lookup: 'www.*******' (OS Error: No address associated with hostname, errno = 7)
解决办法:
(1)右上角点击wifi — 打开网络偏好设置
(2)底部高级 — 选择DNS
(3)添加DNS 服务器 8.8.8.8
(4)保存 — 应用
(5)重启模拟器
原文:macbook 上安卓模拟器无法连接网络
做移动端开发的小伙伴都知道,针对不同型号和尺寸的手机要进行页面适配,且Android和iOS适配方案各不相同,那flutter端如何进行适配呢?以下为近期flutter开发过程中关于适配的一些学习和记录~~~~
说到flutter屏幕适配,就不得不提到插件 flutter_screenutil ,提到flutter_screenutil就不得不说以下几点????
默认宽1080px
默认高1920px
allowFontScaling为false,即不跟随系统字体大小设置变化
初始化单位为px
需要把context传进去,因为内部是通过 MediaQuery 来获取屏幕尺寸等相关信息的
无需再传context,因为内部是通过单例 window 来获取屏幕尺寸等相关信息的
作为iOS开发,之前都是以pt为参照进行比例适配的,且架构组已经定义了一套适配相关常量,传px进去不太方便,所以需要对flutter_screenutil进行扩展
公司设计图是以iPhone X的尺寸提供的即物理设备尺寸为375x812,像素比例为750x1624,像素密度比为2
初始化仍用px来初始化
dart sdk 2.7正式支持 extension-method ,即为已有类扩展方法,从 flutter_screenutil 这种 540.w 写法点进去,我们可以看到
flutter_screenutil为num类扩展了一系列简写方法,那我们当然可以按照它这种方式进行扩展
网上提供的解决方案:
第一步:修改 pubspec.yaml
第二步:执行 flutter pub get
第三步:重启 AndroidStudio
解决方案:去掉const即可
UI设计中px、pt、ppi、dpi、dp、sp之间的关系
Dart/Flutter - 扩展方法(ExtensionMethod)
Flutter项目可以用三种方式开发:
可以根据自己的需求选择,由于之前一直做iOS开发,也做过RN项目开发,Mac上装过Android Studio 和 其他安卓模拟器 Genymotion ,所以我选择Android Studio开发工具,之前装的版本 3.0.1 比较老了,所以进行了升级 3.4 。
体验Flutter
PS:第一次创建项目可以成功,之后再执行这一步操作创建新的Flutter项目时,一直卡住,重启过很多次Android Studio一直都是这样,后面查询资料,发现自己没有同意使用 android-licenses ,可以通过下列命令验证,第一步,先验证:
第一步检测结果,发现是需要同意 android-licenses :
第二步执行同意命令,操作时会有很多个 android-licenses 需要同意:
第二步检测结果:
第三步再次验证,当得到以下截图中结果时,代表所有环境配置已经完成:
上述命令创建一个Flutter项目,项目名为 myapp ,在项目目录中,有安卓和iOS两个项目目录。
Android Studio中会列出所有已经连接了电脑的设备,包括安卓和iPhone。如果想在模拟器上运行,下面可以选择对应的模拟器,如图:
PS:如果想在模拟器上运行,需要先安装一个模拟器,选择Tools AVD Manager,如图:
然后选择Create Virtual Device,根据提示一步一步操作即可(建议翻墙条件下操作),添加完成后就可以在这个界面看到自己已经添加的模拟器,点击绿色的运行按钮,即可打开该模拟器:
问题原因:版本大小原因
解决方案:点击ios文件夹-点击podfile修改如下(亲测实用已解决)
解决方案:
删除IOS工程中的Podfile.lock文件,重新pod install(继续执行Flutter run操作)即可解决。
问题原因:没有配置safety相关
解决方案:可以直接在命令行中执行:
然后在Additional run args 这行键入一下命令即可。
问题原因:xcode版本更新导致的
解决方案:将爆红处一行隐藏,运行,点击fix即可,会显示正确位置就解决了。
解决方法:
1、找到第一个爆红文件,将311行问号后面的Colors.white删除即可
2、 在相同的文件夹内找到第二个爆红文件,找到106行,删除super.addAllowedPoint这一行即可。
造成原因分析:还不清楚
群友帮助:经常出现,重启电脑多试试
解决方案:暂未找到
重新打开即可。
因为软件在后台时间过长,软件会出现一个黑屏动画,就需要重启软件即可恢复。
Unsupported Android Plugin version: 4.2.2 看到这个提示着实头疼,不支持版本,那怎么办,降级吧,改为了4.0.2,还是同样的提示,这就怪了
在StackoverFlow上有这样一个说法,说是这是由于安卓添加了productFlavors来设置多渠道打包,看到这里,去看自己工程果不其然,我也添加了这个
解决
1、若是使用AndriodStudio调试flutter工程需要在Run--Editd Configuration--选中左侧main文件--在Build flavor处添加一个在productFlavors内部定义的渠道比如huawei,点击OK,重启IDE,此时发现问题解决了
2、若是使用VSCode调试flutter工程 需要在launch.json设置新的launch配置具体
其中huawei即为productFlavors中设置的某个渠道 此时我们调试会多一个huawei的选项,安卓使用该选项调试即可
同时若是打包需要使用
flutter build apk --flavor huawei
run需要使用
flutter run --flavor huawei