Flutter 可以开发 Mac,Linux,Windows 桌面,但是对于平台目前只能打对于的包,以及调试本平台的包。

切换到 master 分支

首先必须切换到 master 分支。我之前在 dev 分支,折腾了好久,都只停留于理论概念阶段。直到有一次看到了简书中提到需要在 master 分支,经过测试确实可以正常运行。其实当时主要是卡在 本地找不到桌面模拟器这个环节。

开启 Mac 开发桌面应用

Flutter 的 master 默认是关闭 桌面应用的,我们可以使用下面的命令开启:

flutter config --enable-macos-desktop

flutter config --enable-linux-desktop

flutter config --enable-windows-desktop

这个默认会修改 flutter 的配置文件,配置目录是:当前用户名目录下的 .flutter_settings。

Flutter 查看本机的桌面模拟器

使用命令:

flutter devices

创建带 Mac 桌面应用的 Flutter 工程

包名需要小写哦,否则就是不匹配 dart 的包名。

flutter create --macos hello_desktop_demo

创建成功后:

让项目支持 Mac 桌面应用

Mac 相对支持的较好,创建项目后立刻就能运行起来。Windows 相对来说 需要安装 VS。Linux 也是需要对应组件。

发布平台包

因为各自平台的构建不同,打包命令也不同,这里仅以 Mac 应用为例。

编译出对应平台的安装包:

flutter build macos

flutter build linux

flutter build windows

构建成功

输出对应的 Mac 应用包

直接运行 Mac 应用

可以编译出对应版本,在 项目目录中的 build/对应平台/release 目录下。这里只能编译和本机相同平台。

  • Linux平台编译出的为一个可执行文件
  • Windows平台编译出的为.exe文件
  • Mac平台编译出的为.pgk文件

小结

构建桌面应用程序还不是特别稳定,如果遇到问题,可以查询官方文档,这里只作为介绍。

使用 Flutter 开发 Mac 桌面应用的更多相关文章

  1. MAC安装flutter开发环境

    #最近在学flutter开发,写一篇记录一下安装的过程 1.配置flutter镜像地址  vim ~/.bash_profile 命令行输入后回车,打开.bash_profile配置镜像地址 expo ...

  2. mac 上配置flutter开发环境

    (ios,Android,Xcode,Android Studio,VScode,IDEA) 1)安装Flutter SDK 2)iOS 环境配置 3)Android Studio配置 4)VS co ...

  3. 安装与配置Flutter开发环境

    这篇博客我们介绍了Flutter,并且对比了H5,React Native,Flutter. 由于Flutter是跨平台的开发框架,开发一次可以同时运行在Android和iOS上面,所以我们开发时最好 ...

  4. Canonical通过Flutter启用Linux桌面应用程序支持

    子标题:Ubuntu团队为所有Linux发行版上的Flutter应用程序制作了一个新的基于GTK +的主机. 此文翻译自:https://medium.com/flutter/announcing-f ...

  5. Flutter 开发从 0 到 1(五)源码

    Flutter 开发从 0 到 1 明天开始又要上班了,你的假期任务完成如何啊?由于平时加班太多了,实在挤不出更多时间,从开始想用 Flutter <Flutter 开发从 0 到 1(一)需求 ...

  6. Electron+Vue开发跨平台桌面应用

    Electron+Vue开发跨平台桌面应用 xiangzhihong发布于 2019-12-23 虽然B/S是目前开发的主流,但是C/S仍然有很大的市场需求.受限于浏览器的沙盒限制,网页应用无法满足某 ...

  7. 在 macOS 上搭建 Flutter 开发环境

    下载 Flutter SDK flutter官网下载:https://flutter.io/sdk-archive/#macos 若上述链接无法访问,可通过GitHub下载 https://githu ...

  8. 马上着手开发Mac应用程序

    你是否想要开发 Mac 应用程序却又不知道从哪里入手?本路线图提供了 Mac 应用程序开发的绝佳起点,即使你已经是一个 iOS 开发专家,本路线图对你依然适用.Apple让开发应用程序和提交应用程序到 ...

  9. android widget 开发实例 : 桌面便签程序的实现具体解释和源代码 (上)

    如有错漏请不吝拍砖指正,转载请注明出处,很感谢 桌面便签软件是android上经常使用软件的一种,比方比較早的Sticky Note,就曾很流行, Sticky Note的介绍能够參见 http:// ...

随机推荐

  1. 《手把手教你》系列进阶篇之1-python+ selenium自动化测试 - python基础扫盲(详细教程)

    1. 简介 如果你从一开始就跟着宏哥看博客文章到这里,基础篇和练习篇的文章.如果你认真看过,并且手动去敲过每一篇的脚本代码,那边恭喜你,至少说你算真正会利用Python+Selenium编写自动化脚本 ...

  2. 16.Django学习之文件上传和下载

    上传就这么六步! 一. settings配置文件中配置 MEDIA_URL = '/media/' MEDIA_ROOT = os.path.join(BASE_DIR, 'medias').repl ...

  3. matplotlib画图总结--常用功能

    0.内容范围 多曲线图.图例.坐标轴.注释文字等. 1.曲线图 多曲线图.图例.网格.坐标轴名称.图标名.坐标轴范围等. from matplotlib import pyplot as plt im ...

  4. iOS动画浅汇

    转自:http://www.cocoachina.com/ios/20160311/15660.html 在iOS开发中,制作动画效果是最让开发者享受的环节之一.一个设计严谨.精细的动画效果能给用户耳 ...

  5. [TimLinux] JavaScript 判断 input checkbox选中的方法

    1. input属性 <label> <span>选择</span> <input type="checkbox" name=" ...

  6. Mysql基础03-函数

    函数 字符串函数 函数 用法 CONCAT(S1,S2,......,Sn) 连接S1,S2,......,Sn为一个字符串 CONCAT_WS(s, S1,S2,......,Sn) 同CONCAT ...

  7. numpy的基本API(一)——创建

    numpy的基本创建API iwehdio的博客园:https://www.cnblogs.com/iwehdio/ 1.np.empty([a, b]) empty方法可以在无需初始化的情况下创建认 ...

  8. LNMP-Nginx反向代理

    Nginx反向代理 Nginx提供反向代理的模块http proxy,这个模块是默认的,不需要重新编译模块.通常情况下,Nginx代理一般常用的环境是,提供web服务的服务器放在内网,暴露在外网上容易 ...

  9. SpringAOP在web应用中的使用

    之前的aop是通过手动创建代理类来进行通知的,但是在日常开发中,我们并不愿意在代码中硬编码这些代理类,我们更愿意使用DI和IOC来管理aop代理类.Spring为我们提供了以下方式来使用aop框架 一 ...

  10. 【Maven】常用命令

    [Maven]常用命令 转载:https://www.cnblogs.com/yangchongxing/p/10267028.html Maven Jar 搜索:https://mvnreposit ...