栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Go语言

golang桌面gui库fyne使用

Go语言 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

golang桌面gui库fyne使用

golang桌面gui库fyne使用 使用 初始项目
  • 新建项目文件夹fyna
  • 执行go mod init
  • 执行go get fyne.io/fyne/v2
  • 执行go mod tidy
  • 创建main.go

执行以上步骤即可创建一个fyne环境

hello world

代码如下:

package main

import (
	"fyne.io/fyne/v2/app"
	"fyne.io/fyne/v2/widget"
)

func main() {
	a := app.New()
	//创建一个窗口
	w := a.NewWindow("hello world")
	//设置窗口内显示内容
	w.SetContent(widget.NewLabel("hello world!"))
	//展示窗口 并运行程序
	w.ShowAndRun()
}

运行代码执行go run main.go或者go run .
可以看到一个标题为hello world内容显示为hello world!的窗口程序

打包 打包桌面程序

参考:https://developer.fyne.io/started/packaging

打包一个图形程序步骤比较复杂,典型的窗口程序包含图标和一些元数据,包括在不同环境下的一些不同表现格式的数据整合。

在fyne中有package打包命令,可以自动处理打包中的问题。但是需要打包时设置具体的打包系统和需要的元数据(比如图标)就可以打包程序了。图标也可以自动生成.icns或.ico后缀的图标文件,所以只需要提供.png文件。最终只需要处理需要打包的平台即可。

打包命令如下:

go install fyne.io/fyne/v2/cmd/fyne@latest
fyne package -os darwin -icon myapp.png

如果go版本低于1.16,则使用go get命令:

go get fyne.io/fyne/v2/cmd/fyne
fyne package -os darwin -icon myapp.png

打包成windows环境或liunx环境可执行程序命令:

fyne package -os linux -icon myapp.png
fyne package -os windows -icon myapp.png

以上命令将会生成:

  • myapp.tar.gz
  • myapp.exe

安装当前系统的桌面app应用:

fyne install -icon myapp.png
打包手机程序

参考:https://developer.fyne.io/started/mobile

打包为移动端程序需要对应SDK环境。Android程序需要安装Android SDK和NDK及其对应的环境工具(如 adb)。打包IOS app需要安装Xcode和对应的包工具。
有了对应环境后,打包命令如下:

fyne package -os android -appID com.example.myapp -icon mobileIcon.png
fyne package -os ios -appID com.example.myapp -icon mobileIcon.png

第一次打包可能比较耗时。打包结果:

  • myapp.apk – Android
  • myapp.app – ios

安装安卓程序到手机或模拟器命令:

adb install myapp.apk

安装ios app需要打开Xcode>Window>Devices and Simulators,然后将myapp.app拖入app list.

安装到模拟器命令:

xcrun simctl install booted myapp.app
打包配置

以上命令都可以通过提供默认图标文件 Icon.png来避免每次打包都要执行图标参数。2.1版本后支持提供元数据文件FyneApp.toml来配置打包参数。注意,这些文件需要位于命令运行的目录下。
如:

Website = "https://example.com"

[Details]
Icon = "Icon.png"
Name = "My App"
ID = "com.example.app"
Version = "1.0.0"
Build = 1
发布

参考:https://developer.fyne.io/started/distribution

打包完的程序可以直接分享或者发布,但是如果想要发布到对应的软件市场,则需要些额外的步骤,根据发布的平台不同,还需要设置一些具体的配置。

这里需要使用到fyne release用来处理发布到不同平台商店的配置。对应不同平台步骤如下。

macOS App Store

前提:

  • Apple mac running macOS and Xcode(Xcode环境)
  • Apple Developer account(苹果开发者账号)
  • Mac App Store application certificate(AppStore证书)
  • Mac App Store installer certificate(AppStore安装证书)
  • Apple Transporter app from App Store(Transporter工具)

步骤:
1. 前往AppStore Connect设置要构建的app版本信息
2. 打包发布信息
bash fyne release -appID com.example.myapp -appVersion 1.0 -appBuild 1 -category games
3. 将.pkg文件拖入Transporter工具并点击Deliver
4. 返回 AppStore Connect 网站,选择要发布的版本并提交。

Google Play Store (Android)

前提:

  • Google Play Console 账号
  • 发布的keystore(文档)

步骤:

  1. 前往 谷歌开发者控制台设置相关版本数据,并关闭Play app signing
  2. 打包发布信息
 fyne release -os android -appID com.example.myapp -appVersion 1.0 -appBuild 1
  1. 将.apk文件拖入Play Console
  2. 发布版本
iOS App Store

前提:

  • Apple mac running macOS and Xcode(Xcode环境)
  • Apple Developer account(苹果开发者账号)
  • iOS App Store distribution certificate(ios App 发布证书)
  • Apple Transporter app from App Store(Transporter工具)

步骤:

  1. 前往AppStore Connect设置要构建的app版本信息
  2. 打包
 fyne release -os ios -appID com.example.myapp -appVersion 1.0 -appBuild 1
  1. 将.ipa文件拖入Transporter工具并点击Deliver
  2. 返回 AppStore Connect 网站,选择要发布的版本并提交。

完。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/902841.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号