gpt4 book ai didi

macos - 如何在Mac上的dmg/pkg中包括安装程序依赖项

转载 作者:行者123 更新时间:2023-12-03 17:37:06 25 4
gpt4 key购买 nike

我有一个Mac应用程序(例如包含Sample.app的Sample.pkg)以及一些pkg依赖项(例如A.pkg和B.pkg)。每当用户运行与这三个软件包捆绑在一起的dmg/product存档时,必须先运行A.pkgB.pkg,然后再安装Sample.pkg

有没有一种方法可以在打包mac应用程序时指定此依赖关系,而无需用户手动按正确的顺序进行检查和安装?

最佳答案

解决方案

有一种方法。
您可以将此类条目添加到distribution.xml

<?xml version="1.0" encoding="utf-8" standalone="no"?>
<installer-gui-script minSpecVersion="1">
<title>Application name</title>
<organization>com.organization</organization>

....

<volume-check>
<required-bundles description="Some message which UI Installer doesn't show :(">

<!-- bundle 1 -->
<bundle id="com.organization.app1" path="Applications/App1.app" />

<!-- bundle 2 -->
<bundle id="com.organization.app2" path="Applications/App2.app" />
</required-bundles>
</volume-check>

....
</installer-gui-script>

此处记录了 (required-bundles)

一些示例可以是 found on github

坏处

Apple Installer中存在一些错误, required-bundles description说:

Attributes

|----------------|------------------|------------------------------------------------------------|
| Attribute name | Type | Description |
|----------------|------------------|------------------------------------------------------------|
| | | _Optional._ Values: `true` (default) to require all of |
| `all` | Boolean | the specified bundles, or `false` to require at least one |
| | | of them. |
|----------------|------------------|------------------------------------------------------------|
| `description` | String, | _Optional._ A description of the required bundles, |
| | localization key | displayed to the user if the requirement is not met. |
|----------------|------------------|------------------------------------------------------------|


因此应该显示 description的消息,但我在任何地方都看不到它,因此用户可能会感到困惑,为什么他无法安装应用程序。

它只是警告: You can't install <your application> here, <your application> do not allow it.(对不起,翻译从我的本地化回到英语)。

选择

我已经看到一些安装包,该安装包正在运行自定义脚本 installation-check,使用 system.run('script_name')从安装JavaScript调用它。

关于macos - 如何在Mac上的dmg/pkg中包括安装程序依赖项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31390283/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com