我在非xcode工具中开发了macOS .app。我想签名,所以用户可以从我的网站下载。
我手动创建了我的“info.plist”文件,如下所示:
<?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>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleExecutable</key>
<string>mydemo</string>
<key>CFBundleName</key>
<string>md</string>
<key>LSApplicationCategoryType</key>
<string></string>
<key>CFBundleIdentifier</key>
<string>com.company.mydemo</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleSignature</key>
<string>md</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleVersion</key>
<string>1</string>
<key>CFBundleIconFile</key>
<string>mydemo.icns</string>
<key>CSResourcesFileMapped</key>
<true/>
<key>CFBundleDocumentTypes</key>
<array>
<dict>
<key>CFBundleTypeRole</key>
<string>Viewer</string>
<key>CFBundleTypeExtensions</key>
<array>
<string>*</string>
</array>
<key>CFBundleTypeOSTypes</key>
<array>
<string>fold</string>
<string>disk</string>
<string>****</string>
</array>
</dict>
</array>
<key>NSHighResolutionCapable</key>
<true/>
</dict>
</plist>
我有一个Apple开发者帐户 https://developer/apple/account/mac/certificate按照创建开发者ID应用程序证书的说明进行操作。
我现在正在做这个
codesign -s "Certificate Developer ID Company Name" mydemo.app
但得到错误
mydemo.app:代码对象根本没有签名在子组件中: mydemo.app/Contents/info.plist
我的.app文件确实没有包含在其他库中 - 只是可执行文件 mydemo.app/Contents/MacOS/mydemo
我想成功签署mydemo.app。我在mydemo.zip中发布我的应用程序,我的目标是当人们下载时。解压缩并将其拖入/ Applications它将更容易运行
答案 0 :(得分:4)
info.plist
文件名应大写:
Info.plist
纠正后,它应该没有问题地编码。