前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Electron实用技巧-electron-builder中用户协议(license)的使用及多语言支持

Electron实用技巧-electron-builder中用户协议(license)的使用及多语言支持

作者头像
xhznl
发布2021-02-04 11:33:41
2.4K0
发布2021-02-04 11:33:41
举报
文章被收录于专栏:小黑在哪里小黑在哪里

# 1

通常pc软件的安装过程中,会加入用户协议,如:

下面介绍一下使用electron-builder打包应用,如何加入license。首先参考官网介绍:windows:nsis[1],macOS:dmg[2]

# 2

官网上关于license配置说明写的不是很详细,下面是我实践总结出的正确的姿势:

最简单的方法是在你的项目/build目录下新建license.text文件,然后正常打包就可以了,无需其他设置。

注意,这里有一个中文乱码的问题,如果只考虑windows系统的话,编码可以选择ANSI,就不会乱码了。

但是ANSI在macOS下是不行的,所以更推荐的方案是使用 “带有BOM的UTF-8“,这样在windows,macOS下都可以使用。

image-20210122100244716

/buildelectron-builder默认资源目录,也可以修改,比如我这里是public目录:

代码语言:javascript
复制
directories: {
  buildResources: "./public",
}

这样license.text文件就放在/public目录下即可。

如果没有多语言需求的话,这样就结束了,windows,macOS通用。

# 3

如果要支持多语言,只需修改license文件名添加对应的语言代码后缀,如:license_xxx.txt。关于语言代码官网给出的参考是language code to name[3],这里有个错误,中文对应的是zh,实际上简体中文应该写zh_CN

下面在我的/public目录下新建license_en.txtlicense_zh_CN.txt

为了测试多语言,我增加一个语言选择配置displayLanguageSelector(正常不建议使用这个配置,默认跟随系统语言):

代码语言:javascript
复制
nsis: {
  oneClick: false,
  allowToChangeInstallationDirectory: true,
  
  displayLanguageSelector: true,
},

打包后安装,选择语言:

英文:

中文:

macOS:

参考资料

[1]

nsis: https://www.electron.build/configuration/nsis

[2]

dmg: https://www.electron.build/configuration/dmg

[3]

language code to name: https://github.com/meikidd/iso-639-1/blob/master/src/data.js

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-01-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小黑在哪里 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • # 1
  • # 2
  • # 3
    • 参考资料
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档