问题
I am trying to do a simple build automation of my iPhone apps with TeamCity, but having this nagging issue..
When I manually pickup and install .app file from the build folder it works great (syncs smoothly with iTunes and I can see the app on my phone)
But when I try to zip this with /bin/zip or ditto...then the zipped contents loose the CodeSigning (iTunes says that it cannot install this app because its not signed)
I have tried different combinations of these..
ditto -ck --rsrc --keepParent HelloWorld.app HelloWorld.zip
Any more ideas?
I tried this too but still getting the same error
version=$(date "+%Y-%m-%d.%H.%M.%S")
cd "$CONFIGURATION_BUILD_DIR"
zip -r -y "HelloWorld-$version.zip" HelloWorld.app
回答1:
You need to use the -y option on zip:
zip -r -y zipped_blahapp.zip blahapp.app
-y
Store symbolic links as such in the zip archive, instead of compressing and storing the file referred to by the link (UNIX only).
Update
Now the Xcode archive functionality is available from the command line, you should probably be using that:
xcodebuild archive -workspace $APPNAME.xcodeproj/project.xcworkspace -scheme $APPSCHEMENAME > $OUTDIR/logs/$APPNAME.log
来源:https://stackoverflow.com/questions/2878797/iphone-compressing-app-files-in-command-line-mac-os-x-removes-codesigning