App Signing Question

0 views
Skip to first unread message

Jim Heising

unread,
Aug 27, 2009, 1:37:47 PM8/27/09
to Seattle iPhone Development
I have a situation that I'm hoping someone can help me out with.

We are building an app for another company and we won't be giving them
the source code. What I'd like to be able to do is ship them a
compiled binary and have them upload the finished app using their
apple certificate and account.

Can an app be re-signed after it has been signed and compiled? I've
seen some blog postings that say this is possible, but I read
somewhere that it may not work with distribution certificates.

Any ideas?

Cheers,

-jim

Nick Fox

unread,
Aug 27, 2009, 8:00:06 PM8/27/09
to seattle...@googlegroups.com
Jim

Erica Sadun has written an article on how to re-sign apps *between* developers:

http://www.tuaw.com/2009/06/24/dev-corner-signing-iphone-apps-for-informal-distribution/

Nick

Chris Parrish

unread,
Aug 27, 2009, 8:22:16 PM8/27/09
to seattle...@googlegroups.com
I've definitely re-signed apps that have been signed for distribution with my development certificate with success, but I have never tried to re-sign with a distribution certificate. You can read this article from Craig Hockenberry that talks about how to do the signing from the command line :


you can also validate a signing by using :

codesign -vvv MyApp.app/MyApp
What we have done for clients is to have them give us their distribution certificate and private key so we can sign for them and give them the build, so this will also work.
You could probably do a test by signing a development build with your own distribution certificate and validating from the command line. If that works I would assume that the same would work for the client when the signed with their own certificate. 

Ram

unread,
Aug 28, 2009, 1:56:26 AM8/28/09
to Seattle iPhone Development
Jim, if re-signing turns out to be too cumbersome, you may want to
consider building all of your source code (except main.m etc.) into a
static library.

Then provide the entire xcode project (including the library and
main.m ...) to your client. They can build it and sign it for
distribution.

Ram

Joe Heck

unread,
Aug 27, 2009, 9:27:40 PM8/27/09
to seattle...@googlegroups.com
Jim -

Definitely possible to resign the code - the issue would be getting the file that gets embedded into the package updated correctly with the distribution certifications. I don't know of any documented way to do that without using the build process from Xcode to take care of the pieces/parts.

What I've seen done is the contractor gets the distribution certificate and sets up an otherwise clean machine to create the deployment targets for that client. Typically a PITA - but can also used for the ad-hoc distributions that you might make during the development process.

-joe

Daniel Dosen

unread,
Aug 28, 2009, 12:53:21 PM8/28/09
to seattle...@googlegroups.com
Is there an issue with the company you're working just adding you as a developer (from an iPhone Portal perspective) - so that you can download a provisioning profile and compile a distribution build from your machine(s) for them?  That seems like the easiest approach.  They can then manage your provisioning profile "out" as you complete your work.  

I think that's the scenario apple was trying to address when they made it easier for developers to work with multiple development/distribution certs on a single machine of late.

--dan
Reply all
Reply to author
Forward
0 new messages