Can a client release an .ipa binary that was created with my developer portal certificates? - ios

I am for the first time, creating an app for a client (rather than for a company I have full access to). I use the phonegap method which includes generating the app's provisioning profile and certificates in the developer portal, using phonegap to package it all as a releasable .ipa file.
Are there any limitations on me generating the .ipa file in phonegap, sending it to them, and them releasing the binary through their itunes connect? Or - will it get caught up when they upload because they didn't generate the certificates?

They are almost definitely going to need to sign the file with your production certificate. You can export it from Xcode if you use it and have them add it to their keychain.

Related

How to submit app made by third party to iTunes Connect without giving away the distribution certificate?

I'm developing apps for other companies. My customers want their app in App Store to show as published by their own company, not mine. Also, they don't want to give me their private key for signing apps for App Store distribution. I don't want the key myself, because I don't want any legal responsibility related to the key being lost or stolen.
They can add me as a developer on their company's team inside the Apple Developer portal, and this gives me access to publish new builds for testing. In this situation, I must sign my app with their distribution certificate, or my builds would be rejected when uploading them. Is that correct?
A possibility is that I send them the app as an IPA-file, using their app's bundle id, and sign it with my own certificate. They would then resign the app with their distribution certificate and submit it to iTunes Connect using Application Loader or similar. What is the easiest way for them to do the re-signing? Will they have to use Xcode to upload the IPA, or manually run codesign on the command line?
I'm looking to make this as easy as possible. The people receiving the builds (IPA-files) are not developers.
Try this one, you can sign IPA package by your certificate and send it to them, then ask them to re-sign it using their own certificate.
How to Re-Sign an iOS App from an External Developer
In this scenario, the customer will have to resign the IPA file they recieve from the developer and upload it to iTunes Connect themselves using Apple AppLoader or Xcode. To resign it, they will need the codesign binary provided by the Xcode command line tools (full Xcode not required, but will also work). Optionally, they can use Xcode to upload and re-sign an xcarchive.
There are some apps that give a UI to codesign, like iResign and AirSyncApp, that are more user-friendly than the command line.
Thanks to #alanc-liu for contributing information.

Is it possible to create an ipa file for the App Store with developer account?

I am working on a tvOS app. I need to create an ipa file. The client has provided a distribution certificate and a provisional profile for the app. But, the client has not provided any Apple Developer account details. Is it possible to create a valid ipa file for App Store?
You will not be able to be able to create a valid ipa without being part of their team on the Members Centre.
However, it should be relatively straightforward for them to re-sign the IPA, instructions can be found here:
How to Re-Sign an iOS App from an External Developer
This means you can just sign the ipa with your regular developers profile.
It may be worth noting that they can add you to their team on the Developer Centre without adding you to their team on iTunes connect as they are two separate services. This means you can provide them with a valid, signed build which they could then upload to iTunes Connect themselves.

Coverting html javascript into iOS app through PhoneGap

I did the following step to convert my html and javascript to make it compatible for iOS app using phonegap:
I uploaded the zipped file of my java script on phonegap.com and gave the relevant .p12 certificate along with the provising profile.
Now I downloaded the ipa file from there.
I tried to install this app through iTunes which did not installed desppite of waiting for couple of hours.
What can be the issue can anyone please tell me?
Is it something like that the provising profile used here should be for that particular device?
i think you have not added device in provising profile
1 Go to your Apple developer portal Click Devices to register your iOS device.
You need to connect your device to iTunes to obtain your UUID Click Certificate
2-Create a certificate for Production (to use PhoneGap Build, otherwise Development) Download the certificate
3- Convert the certificate to a p12 file . - Double-click the .cer file to open it in Key Chain Access.
Then click My Certificates under the category, Ctrl-click the certificate and export.
When you save the .p12 file, you are asked to create a password that you will need later.
4- Create a provision file on Apple developer portal, then download. Again, to make this work on PhoneGap Build, you need one for Distribution, otherwise Development. -
See more at: link

how to get .mobileprovision to build phonegap iphone app at windows?

I'm using windows 8 to building applications with phonegap,
every thing is good except building apple application at:
https://build.phonegap.com
this appears:
phonegap build "no key selected"
how to get the key or .mobileprovision file?
You have to create them on https://developer.apple.com/, as AJD mentioned.
Go to your Apple developer portal
Click Devices to register your iOS device. You need to connect your device to iTunes to obtain your UUID
Click Certificate
Create a certificate for Production (to use PhoneGap Build, otherwise Development)
Download the certificate
Convert the certificate to a p12 file (See the screenshots below) - Double-click the .cer file to open it in Key Chain Access. Then click My Certificates under the category, Ctrl-click the certificate and export. When you save the .p12 file, you are asked to create a password that you will need later.
Create a provision file on Apple developer portal, then download. Again, to make this work on PhoneGap Build, you need one for Distribution, otherwise Development.
Actually, I blogged about it because using PhoneGap Build is not as easy as it should to develop iOS apps.
http://www.pubnub.com/blog/converting-your-javascript-app-to-an-ios-app-w-phonegap/
I know this question is made a year ago, but I hope this helps to everybody who has the same question.
You create and download the provisioning profile and an associated certificate on the Apple developer site.
Go
https://developer.apple.com/
Go member center > manage certificates and profiles...
A valid provisioning profile is connected to a valid distribution certificate. You will need both active.
Building for iOS
We're now able to offer support for building to iOS devices through Adobe® PhoneGap™ Build. The process for completing iOS builds is slightly different than that for other platforms: all iOS builds need to be signed by a developer certificate and a provisioning profile, that is tied to your Apple developer account and the device you wish to test on. This document covers how to set this up.
Note: Since PhoneGap Build uses Apple's standard development process to build applications, you will need to sign up for their developer program to build iOS applications on PhoneGap Build. You will also need a Mac to configure your certificate and provisioning profile.
When you upload a new application to PhoneGap Build, if you don't have a default certificate-profile pair attached to your account, you will be alerted that the iOS build can not be completed:
iOS Key Required
Your key will actually consist of two files: a certificate and a provisioning profile. Apple has extensive documentation for setting up your environment locally: the best approach is to ensure you can build an iOS application to your iOS device locally, to be sure that both your certificate and your provisioning profile are set up correctly for code signing.
Once you have these set up, you can export them for upload to PhoneGap Build. For the provisioning profile, you will need a file with the mobileprovision extension, which looks like this:
Provisioning Profile in Finder
Ensure that this provisioning profile is correctly paired with the device(s) you wish to test on.
Note that when you create your profile, you will specify the App IDs that are linked to the profile. This is important when using PhoneGap Build: the package name you specify for your app, in your config.xml (the id attribute of the widget element) or through the Edit App page, will have to match the ID for the provisioning profile. If they fail to match, your app will not be built correctly.
Apple appends a "Bundle Seed ID," or "App ID Prefix," to the provisioning profile when you generate it through the iOS Developer Center. Note that you do not to include this App ID Prefix in your config.xml for PhoneGap Build to build successfully. You just need the reverse-domain style Bundle Identifier - com.domainname.appname. This will also be best compatible with building for other platforms.
To prepare your certificate, you will need to open the Keychain Access utility on your Mac, and identify the certificate that you use for iOS development. Right click on that certificate and select Export ...
Export from Keychain Access
Save the certificate in a location you can remember, and enter a password. Remember the password: you will need to give it to PhoneGap Build, otherwise we cannot use your certificate.
Enter Certificate Password
Now back to the website. On the app detail page, simply select the "new key..." option from the signing key dropdown for the app in question, and then, from the list of platforms with signing available, hit add a key for iOS. Fill out the form: add your p12 certificate file and your mobileprovision file, and enter the password associated with your certificate.
Add Certificate to PhoneGap Build
Once your key is added, we'll attempt to rebuild the application for iOS. If all goes well, you should see a link for the built ipa file available.
You can then download the ipa file and use iTunes to install it directly on your provisioned iOS device.
Happy building!

Building an iOS app for a client with his own developer account for App Store submission

I made an app with xCode 4.3 for a client with his own developer account.
Now i need to send him my compiled/binary app (no source code) so he can submit it under his account.
I dont know his bundle ID and neither i have his developer certificate.
Edit: And he will not supply me his developer certificate.
Can it be done?
I searched how this can be done but didn't find an answer.
Build the IPA as normal, then send it to him along with a copy of the Info.plist. He must then:
Edit the Info.plist file to include his bundle ID.
Unzip the IPA.
Replace the Info.plist file.
Re-sign the application using codesign.
Re-zip the IPA.
Submit it to iTunes Connect manually.
The way I have done this before was to log in as the client, and submit from your machine. But I guess this depends on the trust level between you
You need to have his distribution certificate (with private and public keys) and distribution profile. When you have those, you can create a compiled app for submission to Apple.
Basically, he needs to create the App ID, certificate, and profile and give them to you. If he cannot do this, you need to sign in to his account for him.
Once he has the compiled app, he can easily submit it using Xcode or Application Loader.
Build and archive the iOS app with your own certificates, then send the customer the resulting app archive (zipping up the app's archive directory, if needed). Look here for Xcode's archive files: ~/Library/Developer/Xcode/Archives/
In the archive, they can find and edit the app's Info.plist file.
Then the customer can submit the app archive from Xcode's Organizer and using their own developer account. Xcode should ask them to re-codesign the app with their own Distribution certificates as part of its upload process.

Resources