【发布时间】:2018-03-07 03:59:11
【问题描述】:
我正在签署我的 nwjs 应用程序并使用 productbuild 命令打包它
当我安装应用程序时,它显示在应用程序下并且可以运行,但它在 Finder 中的名称仍然是 nwjs。如何将其更改为我的应用名称?
签名脚本:
identity="3rd Party Mac Developer Application: my comp..."
app="nwjs.app"
rm -f "$app/Icon^M"
rm -r -f "$app/.idea"
echo "### signing libraries"
codesign --force --verify --sign "$identity" "$app/Contents/Versions/64.0.3282.186/libffmpeg.dylib"
codesign --force --verify --sign "$identity" "$app/Contents/Versions/64.0.3282.186/nwjs Framework.framework/libnode.dylib"
echo "### signing frameworks"
codesign --force --verify --sign "$identity" "$app/Contents/Versions/64.0.3282.186/nwjs Framework.framework/Versions/A/XPCServices/AlertNotificationService.xpc"
codesign --force --verify --sign "$identity" "$app/Contents/Versions/64.0.3282.186/nwjs Framework.framework/Versions/A/Helpers/crashpad_handler"
codesign --force --verify --sign "$identity" "$app/Contents/Versions/64.0.3282.186/nwjs Framework.framework/nwjs Framework"
codesign --force --verify --sign "$identity" "$app/Contents/Versions/64.0.3282.186/nwjs Framework.framework/Helpers/crashpad_handler"
codesign --force --verify --sign "$identity" "$app/Contents/Versions/64.0.3282.186/nwjs Helper.app/Contents/MacOS/nwjs Helper"
codesign --force --verify --sign "$identity" "$app/Contents/Versions/64.0.3282.186/nwjs Helper.app/"
echo "### sing osx folder"
codesign --force --verify --sign "$identity" "$app/Contents/MacOS/nwjs"
echo "### signing app"
codesign --force --verify --sign "$identity" "$app"
它签名没有错误,我可以打开签名的应用程序,它可以工作。 然后打包:
productbuild --sign "3rd Party Mac Developer Installer: mycomp..." --component "nwjs.app" /Applications --product "nwjs.app/Contents/Info.plist" MyApp.pkg
当我安装生成的 pkg 时,该应用程序显示在应用程序下并且运行良好。但是它在Finder中的名字依然是nwjs,不管我在下面三个info.plist中怎么改:
Bundle display name
Bundle name
Bundle identifier
在
Contants/Info.plist
Contents/Resources/app.nw//Info.plist
Contents/Versions/57.0.2987.133/nwjs Helper.app/Contents/Info.plist
最后一项的更改会导致应用在启动时崩溃。
版本:
nwjs-sdk-v0.28.3-osx-x64
os: mac high Sierra 10.13.3
【问题讨论】: