首页 > Unity > Unity 如何发布到Mac App Store
2015
11-06

Unity 如何发布到Mac App Store

Unity可以跨平台发布的确是非常强大,但是发布到 Mac App Store 跟发布到iOS不一样,需要经过不少坑才能成功。这里就将我遇到的坑发出来分享下。

参考官网指南 http://docs.unity3d.com/Manual/HOWTO-PortToAppleMacStore.html

这个指南是完整的,但是有些细节的东西并没有说出。

首先,需要到 https://developer.apple.com/ 上去注册Mac证书, 这里需要注册两个证书,分别是 Mac App Distribution 和 Mac Installer Distribution (这个证书让我纠结了好长时间)。 然后就是生成 Provisioning Profile,生成之后下载导入到Xcode中(这里可能也需要些技巧,因为直接双击profile似乎不能导入?)。

然后,准备好指南中所说的全部尺寸的图标,都放到一个文件夹下。通过命令行把图标打包起来

iconutil -c icns UnityPlayer.iconset

接着,去下载个工具( http://jemast.com/unity/unity-entitlements-tool ),用它打开Unity工程所在的目录,设置好对应的信息,加入图标集合,勾选好对应选项。

Unity 如何发布到Mac App Store - 第1张  | FreemanApp

设置好后,按 “Update Build Pipeline”,然后就到Unity中导出Mac执行文件(比如GAMENAME.app)

去到GAMENAME.app的目录下新建一个文件,命名为GAMENAME.entitlements(GAMENAME可以自由更改)。加入以下内容。

<?xml version=”1.0″ encoding=”UTF-8”?> <!DOCTYPE plist PUBLIC “-//Apple//DTD PLIST 1.0//EN” “http://www.apple.com/DTDs/PropertyList-1.0.dtd”> <plist version=”1.0″> <dict> <key>com.apple.security.app-sandbox</key> <true/> </dict> </plist>

保存后修改一下文件的访问权限

chmod -R a+xr “/path/to/GAMENAME.app”

然后对执行文件进行一次签名(不知道为何还要再次签名,在打包时已经签名一次)

codesign -f -s ‘3rd Party Mac Developer Application: DEVELOPER NAME’ –entitlements “GAMENAME.entitlements” “/AppPath/GAMENAME.app”

其中’3rd Party Mac Developer Application: DEVELOPER NAME’,这个参数需要到证书中查看,必须是完整的名字才行,此处被坑了好久。

接着要打包成pkg文件,同样是在命令行中执行

productbuild –component GAMENAME.app /Applications –sign “3rd Party Mac Developer Installer: DEVELOPER NAME” GAMENAME.pkg

这里,就使用了Mac Installer Distribution证书,3rd Party Mac Developer Installer: DEVELOPER NAME这个跟Mac App Distribution证书是不一样,同样需要到证书中查看,不过DEVELOPER NAME是两处保持一致的,只要修改前面的部分就可以。

最后,就是使用Application Uploader来上传pkg文件到App Store! Good Luck~

最后编辑:
作者:freeman
这个作者貌似有点懒,什么都没有留下。

留下一个回复

你的email不会被公开。

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据