当前位置: 首页 > 知识库问答 >
问题:

重要问题使用electron-forge打包macOS app,如何配置实现修改Info.plist?

边浩漫
2024-02-20

需要添加这个

<key>CFBundleURLTypes</key><array>  <dict>    <key>CFBundleTypeRole</key>    <string>Editor</string>    <key>CFBundleURLName</key>    <string>docker-desktop</string>    <key>CFBundleURLSchemes</key>    <array>      <string>docker-desktop</string>    </array>  </dict></array>

共有1个答案

羿经武
2024-02-20

为了使用 Electron Forge 打包 MacOS 应用并修改 Info.plist 文件以添加所需的配置,你需要执行以下步骤:

  1. 自定义构建步骤:在 Forge 的 package.json 文件中,你可以使用 build 部分来自定义构建步骤。你需要修改 build 部分来包含一个自定义的脚本,该脚本将修改 Info.plist 文件。
  2. 使用 electron-builder 插件:Electron Forge 基于 Electron Builder,你可以使用 Electron Builder 的插件系统来修改 Info.plist 文件。例如,你可以使用 electron-builder-xcode 插件来直接修改 Xcode 项目文件。
  3. 直接编辑 plist 文件:你也可以直接编辑生成的 Info.plist 文件。但请注意,这种方法可能会使你的应用无法通过某些签名或分发渠道,因为它们可能会检查签名或应用签名的一致性。

下面是一个简单的示例,展示了如何在 Electron Forge 的 package.json 中添加自定义构建步骤:

{  "name": "my-app",  "version": "1.0.0",  "description": "My Electron Forge app description",  "main": "src/index.js",  "scripts": {    "start": "electron-forge start",    "package": "electron-forge package",    "publish": "electron-forge publish",    "build": "electron-forge build"  },  "build": {    "appId": "com.example.yourapp",    "mac": {      "category": "your.category"    },    "extraResources": [      {        "from": "src/custom-info.plist",        "to": "Info.plist"      }    ]  }}

在这个示例中,我们假设你有一个名为 src/custom-info.plist 的文件,其中包含你想要添加到最终 Info.plist 文件中的所有自定义设置。extraResources 部分将这个文件复制到最终的 app 包中,并重命名为 Info.plist。

请注意,这只是一个基本示例。你可能需要根据你的具体需求进行调整。

 类似资料:
  • 如题,我不清楚是哪一步出错了,electron打包后运行会找不到依赖,比如gm这个库 第一次出现找不到array-parallel, 不是我项目要用的,但gm依赖了它: 我手动安装后再次打包,又提示缺少cross-spawn,安扎安装cross-spawn后打包,提示缺少lru-cache,这个我甚至不知道是谁依赖的,以及安完会不会又少了别的?还要继续多少次? 大家遇到过这种问题吗?又是如何解决的

  • 我在react-native中构建了一个项目,它在我的计算机上运行良好,但在更改其位置后,问题开始出现。我使用“yarn add@react-native-community/async-storage”安装了这个包

  • 使用electron-forge打包生成应用程序时,设置应用程序的exe文件的图标出现问题。无论如何修改` 也没有效果 包括但不限于绝对路径,添加后缀名,设置package.json等

  • 我直接进入wsl debian 跑 npm run make 结果指出来 squirrel 的包,为啥子捏。 不应该是deb包么 我尝试了 有在 debian linux 中重新安装依赖 然后运行 结果报错了

  • 在git端修改配置后如何让客户端生效? 访问接口修改 refresh post方式执行http://localhost/refresh 会刷新env中的配置 restart 如果配置信息已经注入到bean中,由于bean是单例的,不会去加载修改后的配置 需要通过post方式去执行http://localhost/restart, 需要通过application.properties中配置endpo

  • 我使用Eclipse IDE(Spring Tool Suite)很多年了,并且定期在Launching项目中遇到同样的问题 问题发生在现有的“运行配置”之后,可能是在IDE更新之后,但我无法重现为什么会发生这种情况。为了快速修复,我只是删除“运行配置”的错误,只是“鼠标右键单击Application.java- 多年来,我无聊地反复出现这个问题。我认为其他日食或SpringSTS用户也有同样的问