Linux安装go-flutter将现有手机应用迁移到桌面

目录

  • Linux安装go-flutter将现有手机应用迁移到桌面
    • 参考文献:[Go Flutter Desktop (一) 初探](https://blog.csdn.net/qq_28478281/article/details/95615208)
    • 1.安装GO
      • 1.1 下载go
      • 1.2 配置环境变量
      • 1.3 测试go是否安装成功
    • 2.安装hover
    • 3.运行example
    • 4.迁移应用
      • 1)初始化桌面应用
      • 2)添加main_desktop.dart文件在start_up namer/lib里

Linux安装go-flutter将现有手机应用迁移到桌面

参考文献:Go Flutter Desktop (一) 初探

futter开发的应用支持安卓与ios系统,但是要是想同样实现桌面版,就得利用别的工具来实现全平台。目前在github上有两个方案来实现全平台,一个是flutter官方的方案flutter-desktop-embedding,还有一个是使用go和glfw开发的go-flutter。

Flutter Desktop Embedding的话需要开发者会Windows、macOS、Linux三个平台的原生开发,而go-flutter只需要你会go语言,不会再学也比较简单省时,基本上不需要开发插件的话,就用不到go语言来编程。所以我就选择了go-flutter。

1.安装GO

1.1 下载go

golang的官网是打不开的,下载go得去golang国内镜像站Linux安装go-flutter将现有手机应用迁移到桌面_第1张图片Linux安装go-flutter将现有手机应用迁移到桌面_第2张图片选择Linux的下载。点进去就有教程告诉你怎么安。
下载完后,把它提取到home里。

1.2 配置环境变量

这里我按它的教程来做的时候出了很多问题,自己摸索着,最终成功的方法如下:
配置两个地方的环境变量:一个是在profile里,一个是在bash_profile里。

这一步查看ububtu添加环境变量GOPATH这篇文章

这一步若是配置成功的话,在终端运行go version会显示你下载的go的版本号;运行echo $GOPATH会出现工作空间目录路径,我的是home里的goproject。

1.3 测试go是否安装成功

在goproject里新建空白文档,命名为hello.go。在其中输入以下代码:
package main

import “fmt”

func main() {
fmt.Printf(“hello, world\n”)
}
保存后,在终端输入:

cd $HOME/goproject
go build
./hello

显示hello, world就说明go安装成功了。

2.安装hover

hover是由 go 编写的, 专门来创建flutter桌面应用的工具,编译、打包、运行都得依靠这个工具。
官网的安装教程

运行以下命令来安装hover:

go get -u github.com/go-flutter-desktop/hover

终端什么都没出现的话,就表明安装成功了。通过hover -h检查是否安装成功,出现以下内容即可:Linux安装go-flutter将现有手机应用迁移到桌面_第3张图片
有看到有的教程说,hover是安到$GOPATH/bin里了,但是我的没在这个路径里,我也不知道安到哪去了,反正能用就行

这一步我遇到的问题就是,go get安装hover,显示打不开github.com/go-flutter-desktop/hover这个网站,遇到这种情况的话,把go卸载,重新安就行,注意要卸载干净。怎么卸载,可参考Linux下Go的安装、配置 、升级和卸载
不记得放哪了的话,可用which go找到

3.运行example

这一步可有可无,我是用来实验的,看前面所做的准备工作是不是都能生效。
步骤:
1)下载例子
go-flutter-desktop/examples
里面有好几个例程,随便哪个都可以。我选的pointer_demo

2)把Flutter的环境准备好

export PATH='pwd'/flutter/bin:$PATH

再用Android studio打开例程,能正常打开没有错误的话就可以直接进行下一步。
要是打开显示没有配置dart SDK的话,到设置里去设置dart SDK的路径Linux安装go-flutter将现有手机应用迁移到桌面_第4张图片
3)运行
终端输入:
cd example/pointer_demo
hover runLinux安装go-flutter将现有手机应用迁移到桌面_第5张图片
运行出来的结果:
Linux安装go-flutter将现有手机应用迁移到桌面_第6张图片
这个例程是记录鼠标移入或移出中间那个蓝框框(容器container)的次数。

4.迁移应用

1)初始化桌面应用

我要迁移的应用是之前按照Flutter中文网创建的start_up namer
编写您的第一个 Flutter App

cd /flutterProject/startup_namer
hover init github.com/startup_namer

2)添加main_desktop.dart文件在start_up namer/lib里

这一步若是不做,在hover run的时候会出现如下错误:
在这里插入图片描述main_desktop.dart里写入以下代码:
import ‘package:flutter/foundation.dart’;
import ‘package:flutter/widgets.dart’;

import ‘main.dart’;

void main() {
debugDefaultTargetPlatformOverride = TargetPlatform.fuchsia;
runApp(MyApp());
}
运行出来如下图:
Linux安装go-flutter将现有手机应用迁移到桌面_第7张图片
而手机版的有显示单词,如下:
Linux安装go-flutter将现有手机应用迁移到桌面_第8张图片
所以说,单纯添加以上代码还不够,有的包没有导得进去。
以后再更新解决这个问题

你可能感兴趣的:(Linux,go-flutter)