Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos 包装制造商会为我工作吗?_Macos_Packagemaker - Fatal编程技术网

Macos 包装制造商会为我工作吗?

Macos 包装制造商会为我工作吗?,macos,packagemaker,Macos,Packagemaker,我有一个要分发的应用程序。 几乎所有东西都包含在一个包中,所以我可以在第一个版本中将包放在DMG中-但是这对升级不起作用,所以我想我最好提前解决这个过程 我一直在看PackageMaker,它看起来很简单。然而,我有两个可能导致问题的非常具体的要求,从PM文档中看不出这是否可能: 首先,我希望安装程序自动选择安装两个不同版本的应用程序,这取决于之前是否安装了应用程序的早期版本 其次,我不想只覆盖以前的应用程序包,我只希望安装程序覆盖其中的文件并添加新的文件-换句话说,我希望应用程序包中的某些文件

我有一个要分发的应用程序。 几乎所有东西都包含在一个包中,所以我可以在第一个版本中将包放在DMG中-但是这对升级不起作用,所以我想我最好提前解决这个过程

我一直在看PackageMaker,它看起来很简单。然而,我有两个可能导致问题的非常具体的要求,从PM文档中看不出这是否可能:

首先,我希望安装程序自动选择安装两个不同版本的应用程序,这取决于之前是否安装了应用程序的早期版本

其次,我不想只覆盖以前的应用程序包,我只希望安装程序覆盖其中的文件并添加新的文件-换句话说,我希望应用程序包中的某些文件保留以前的版本


这是我可以通过PackageMaker实现的,还是我应该寻找一种不同的方法?

使用安装程序包可以做很多事情,例如运行一个shell脚本,它反过来允许您完成所有事情

我觉得你不是用Mac的方式做的。将数据存储在应用程序包中是不常见的,通常这些数据都会存储到~/Library/application Support/。我假设这两个不同的应用程序非常相似,为什么不设置一个首选项呢


就我个人而言,我觉得现在.zip是分发应用程序的最佳方式。它会自动解压缩,并在下载堆栈中显示应用程序图标。当然,只有在您从互联网上获得它的情况下。

要更新,请查看。forst安装只需从internet复制应用程序包,te用户只需请求执行更新,无需让应用程序执行任何操作

不幸的是,创建的数据位置不可控。。。否则我当然会让自己的生活变得简单火花是一个很好的建议,但我的应用程序不是基于可可粉的atm