2023年12月14日发(作者:)

MacOS开发—程序打包生成pkg文件

上篇文件中介绍了如何,而作为常用的pkg文件包,也是苹果常用的软件安装包格式,这里介绍pkg文件如何打包。

介绍

pkg是MAC OSX 平台下的一种常见安装包格式。类似Window平台的安装包程序。pkg包的安装有一定的流程,引导用户如何安装。

Packages是MAC端比较常用的pkg生成工具。这篇博客主要来讲讲Packages的使用过程。Packages是一款开源的安装包制作工具,能

够指定文件的安装路径、定制安装流程、资源国际化、插件机制、执行安装脚本,能够满足大部分的安装场景。

使用

Distribution(分布模式):

将需要打包的程序放在一个文件夹下,点击Next 为Package工程选定创建目录,Project Name 可以随意决定,将Project Directory选择

为安装文件所在的目录。创建好名称和选择好路径之后,点击Finish 则进入项目的主页,默认为Settings页面,该页面可以设置安装包的包扩展名,安装输出的位

置和安装包的名字。

Presentation中 可以设置标准的安装过程,安装过程分为::Introduction, Read Me(可选), License(可选), Destination Select,

Installation Type, Installation, Summary七个步骤,可以在右侧下面的+号,为每一步定制文本信息,并且每添加一条都可以在对应的国

旗标志选择国际化语言。Packages制作出来的安装包会针对系统语言自动显示对应的国际化资源。

定制安装组件(package)新建项目后会有一个默认的和项目同名的组件(package),可设置组织标识符、版本号、执行动作和安装选项。其中最重要的是Payload页

面。

Payload页面用于指定安装文件。Contents中会显示出系统所有的安装位置。

在一个Payload工程中可以新建很多的组件,比去我们的安装包,需要依赖其他文件是就可以直接创建多个组件然后 选择组件的安装位置即

可。

对于某些应用在安装时可能需要做一些额外的操作,这里可以指定执行脚本。分为安装前和安装后执行。

常见的preinstall

#!/usr/bin/env bash

echo "Running QRCode script"

#

关掉正在运行的

app

echo "Killing QRCode"

killall "QRCode"

echo "Finding old version of QRCode"

sudo rm -rf /Applications/

echo "Removed old versions of QRCode in Applications, if any."

echo "Ran QRCode preinstall script success."

exit 0

常见的postinstall

#!/usr/bin/env bash

echo "Running postinstall script."

echo "Installing ork."

rm -rf ~/Library/Frameworks/ork

mkdir ~/Library/Frameworks/ork

cp -r /Applications//Contents/Frameworks/ork/* ~/Library/Frameworks/ork

chmod -R 6777 ~/Library/Frameworks/ork

echo "Ran postinstall script."

echo "open URL --------"

#open -a Safari "/"

RESULT=`/usr/bin/open '/'`

echo "open URL Success "

exit 0

添加几个组件(package)之后,可以为每个package指定包名称和描述,这些信息在安装时会显示给用户看!

安装包编译生成之后即可开始运行测试了:点击“Build———->Build and Run”

然后运行:

Read Me和License的内容都可以写到一个txt文本中,在安装步骤设置中指定好即可。

安装流程成功结束!到指定的安装位置查看,安装文件都出现了!

**Raw Package(原始模式):**有了上面的经验,Raw Package模式将更加简单这里不做过多的介绍,相信也很容易理解。