distribution profile not displaying while posting app on appstore? - iphone

i have successfully created provisioning and distribution certificates and ready to upload my app. but, while posting i can't access to select the distribution profile?

#NeerajNeeru:
Firstly, Make sure that you download a new copy of distribution provisioning profile for App Store from the account you want to submit the application with and install the same profile by double clicking it. Once you do that select it under your Project Settings and Target Settings under the Release section.
Secondly, Make sure you have selected Release to be run under Archive under Manage Schemes before you build for archiving and archive the app.
Once you select Release under Archive in Manage Schemes, make sure you do Product -> Clean your application and then do Product -> Build For Archiving and then Product -> Archive.
EDIT:
Refer to this: Xcode 4.3: Codesign operation failed (Check that the identity you selected is valid)
Let me know if you need more help
Hope this helps.

i think you have not opened the downloaded profile, download the profile from developer.apple.com and doble click it. it will be able to select now, and re assign profile in your project and target files even they have already selected.

Related

Error When Uploading IPA to TestFlight Using New Target

I recently created a new target in my project for the Lite version of my app. Now when I go to upload the .ipa to TestFlight so I can distribute it to my designer, I'm getting:
Invalid IPA: The keychain-access-group in the embedded.mobileprovision
and your binary don't match.
Seems clear to me the reason this is happening is because of the new target. Does anyone know what exactly do I need to change to get this to work?
I had this same problem. It was caused by having the wrong release code signing identity in the target's build settings. You won't need an entitlements file.
Check you are code signing with the correct Distribution profile.
Under Xcode project select > Build Settings > Code Signing
Code Signing Identity:
- Debug > iPhone Developer
- Release > iPhone Distribution
Provisioning Profile:
- Be sure to select a Distribution profile here!
When you created a new bundle you probably didn't change the entitlements and access groups. Make sure you change these in the entitlements file. Have a look at http://www.karlmonaghan.com/2012/08/09/invalid-ipa-the-keychain-access-group-in-the-embedded-mobileprovision-and-your-binary-dont-match/ on how to do this.
Should look like this
If you don't use an entitlements file...
Double check that your developer certificate and provisioning profile used are up-to-date (even if you have the confidence inspiring green tick in the organiser.) Refresh the profile by visiting the Apple Provisioning Portal and edit / modify the provisioning profile, you're using to sign the app.
Un-click and click the signing identity, so that you can submit the form, and the profile will be regenerated.
Wait a minute (really), Go back to XCode and remove the profile from the organiser, next refresh the profiles, and it should re-appear, as the regenerated version.
Once that's done, try archiving / signing the ipa, and upload to TestFlight.
(use the TestFlight app, to speed up this process.)
Here's what worked for me:
Using Automatic (Enterprise Distribution) Profile Selection for all Code Signing Identities I've Established.
Selecting "Refresh Certificates" when going through the Enterprise/Ad Hoc distribution workflow
I have such kind of problem, I am not sure you have the same one or not.
If I have a installed app with the same app id that I am going to install but with a different target, it creates problem. Seems apps are unique with app id and target. So I had to delete the app to install another app with the same app id but different target.
You have good other answers here, but just to stress something out.
If you worked for more than 1 client, and you actually used more than 1 developer account, then the automatic selection of Code Signing Identity on Archive wizard could be different than the one you need, and you might need to select it each time you create the AdHoc version.
Here is a picture, to show you where your error might be (thats where mine was):

How to create a IPA file for iphone app?

I have created a iphone app. Everything working well in simulator. I want to test it in device. Provisioning profile or certificates are created and just need to create IPA file.
Please tell me step by step how to do that, if somebody knows it well.I am searching google but not find satisfying result. Thanks a lot.
It is very simple to get .ipa file from Xcode:
Select correct provisioning profile in Project and Targets -> Build Settings -> Code Signing -> Code Signing Identity
In Targets change the Bundle Identifier by Targets -> Info -> Bundle Identifier
Clean your project
Archive your project by Product -> Archive
Organizer automatically open with separate window there you can see you project with Archive date/time and project name
Click Share button from the Organizer window
It will ask to you choose the correct Provisioning profile do this correctly
It will ask you for the location to store, select Desktop or anywhere else
In your selected location the project .ipa file will be stored
Please do the above steps. I hope you got some idea. Thanks.
This may help you out for step by step process of making ipa.
Creating an IPA is done along the same way as creating an .xcarchive: Product -> Archive. After the Archive operation completes, go to the Organizer, select your archive, select Share and in the "Select the content and options for sharing:" pane set Contents to "iOS App Store Package (.ipa) and Identity to iPhone Distribution (which should match your ad hoc/app store provisioning profile for the project).
Chances are the "iOS App Store Package (.ipa)" option may be disabled. This happens when your build produces more than a single target: say, an app and a library. All of them end up in the build products folder and Xcode gets naïvely confused about how to package them both into an .ipa file, so it merely disables the option.
A way to solve this is as follows: go through build settings for each of the targets, except the application target, and set Skip Install flag to YES. Then do the Product -> Archive tango once again and go to the Organizer to select your new archive. Now, when clicking on the Share button, the .ipa option should be enabled.
I hope this helps.

Generating an application bundle for submission with Xcode 4

Please help me export my application to iTunes Connect. I dont understand the documents, I have tried my best. I cant find the release of my .app, only the debug version.
I am using xcode 4. Also I dont know if I have signed the application correctly.
Here is a screenshot of my build settings, are these correct.
I setup a distribution certificate, an app ID with a wildcard mask, and a provisioning profile for the App Store, this provisioning profile is then imported into the organizer and on the screenshot below, you see I have assigned it to the Release build.
I cant find the release build at all on my system, only the debug file and would you say my certificates/profiles are set up currently.
Make sure you have configured the Archive panel for the scheme with the name of the archive to create
Then choose Product | Archive from Xcode's menu
Then have a look in your organiser's Archive section
And here are the docs you should be looking at.
First, make sure your Scheme is set to Release. Then, Build your app. If all goes well with no errors, you should be able to get your release build of your app in your Derived Data directory (this is the default Xcode 4 location).
If you don't see anything in Derived Data, check under Xcode->Preferences and go to the Locations tab. That will show you where your builds are going.
Unless I misunderstand the question, to send your app to iTunes connect from Xcode4 you choose Product -> Archive from the menu.
If your certs and IDs are correct, and they seem to be, then you will be shown the Archives view in the Organizer. Select the recent Archive and choose Validate.
If it validates, choose Submit. Your app should be submitted to iTunes Connect.

Test App on Real iPhone [duplicate]

This question already has answers here:
Closed 11 years ago.
Possible Duplicate:
Deploy an iphone app from xcode to iphone
Hi I have tested my app using the iOS simulator. How can I test it on my own iphone? I am an Apple developer member.
The first thing you need is a development certificate. Visit the iOS provisioning portal and follow the steps here: http://developer.apple.com/ios/manage/certificates/team/howto.action:
Once that is done, you can do everything else from Xcode. Using Xcode 4:
Connect your device via USB.
Open the Xcode organizer (Window->Organizer)
Select "Provisioning Profiles"
Check the "Automatic Device Provisioning" checkbox and click "Refresh"
You will be prompted to enter your developer account username and password. Do this.
This step will automatically create and download a wildcard (*) provisioning profile that you can use for testing any application on your device.
After a few seconds you should see this new profile appear in the list with the name "Team Provisioning Profile: *"
Restart Xcode just to be safe. Sometimes it can get confused.
Open a project and select your device from the main schemes dropdown box:
Build and run.
If that doesn't work straight away, make sure your target has the correct code signing options. Find your target's build settings and for the Debug configuration choose "iPhone Developer" under the "Automatic Profile Selector" group in the dropdown:
This should be selected by default.
Good luck!
You need to learn about creating Adhoc Distributions for iOS devices for detailed reference. I am however putting all of it here in the answer:
Creating iPhone Ad Hoc Distribution Builds
1. Adding Beta Tester Devices
Apple allows an Ad Hoc build to be distributed to up to 100 devices which they enforce by making you add the devices to the distribution provisioning certificate. This means that you need to retrieve the UDID for all of the test devices, add them to the provisioning profile using the iOS Provisioning Portal and then download and install the profile.
2. Finding the UDID
To get started you need to ask your beta testers to supply the Unique Device ID (UDID) for their devices. To find UDIDs they can follow the steps on:
whatsmyudid.com
3. Registering the Device
Once you have the UDID you need to add it to your account in the iOS Provisioning Portal in the same way you would for a development device. You do this in the Devices section of the portal and can either use the ‘Add Device’ button to manually add a single device or use the Upload Devices button to bulk upload multiple UDIDs from a text file.
Note: If you want to bulk upload multiple devices the format of the text file needs to be as follows with the two columns separated with tabs:
Device ID Device Name
1234567890123456789012345678901234567890 Test_iPad
The contents of the first line are not important but you need to put something as the first line is ignored when you upload.
Also be aware that you can only register up to 100 devices each year. You can delete devices any time you want but once added they still count towards your annual allocation. (So if you add 100 devices and then delete 50 of them you still have to wait until the next year before you can add any more).
4. Creating the Distribution Provisioning Profile
Assuming you already have a distribution certificate the process to create an Ad Hoc provisioning profile is quick and easy. In the Distribution tab of the Provisioning section use the New Profile button.
The only difference between an Ad Hoc profile and a normal App Store profile is the Distribution Method.
Ensure you select the Ad Hoc method and then enter a profile name, the App ID and finally ensure you select all of the devices you want the Ad Hoc build to run on. Once you have finished submitting the profile you should download it and save it somewhere safe as you will need to send it to each of the beta testers. The file should have an extension of .mobileprovision. You should also drag the file onto your Xcode icon to install it, you can use the Xcode organiser to verify that it installed ok. You should see the profile in the Provisioning Profiles section.
5. Building for Ad Hoc Distribution
With the provisioning profiles configured correctly the next step is to prepare the project in Xcode for an Ad Hoc build. It might be useful to create a configuration just for Ad Hoc builds so that you do not have to worry about the details each time. The easiest way to do that is to copy an existing configuration, if you already have a Distribution configuration that is probably a good starting point otherwise you can start from the default “Release” configuration.
With the project open in Xcode, right-click on the target and select “Get Info” to bring up the Info dialog window and select the Build tab and then in the Configuration drop down menu select “Edit Configurations…”
Select an existing configuration (e.g. Release or Distribution) and then at the bottom of the window use the Duplicate button to create a copy of the configuration and name it “AdHoc”.
In the Target Info window ensure this new AdHoc configuration is selected and then adjust the following settings in the Build tab. In the Code Signing section, look for the “Any iOS” setting under Code Signing Identity and make sure it is set to iPhone Distribution and matches the Ad Hoc provisioning profile we installed previously.
6. Entitlements
There is one additional step if your project includes an Entitlements.plist file (perhaps because you needed to enable keychain data sharing). For an Ad Hoc distribution you need to ensure that the get-task-allow flag is not set in the plist file. One way to handle this is to add a second file (Entitlements-adhoc.plist) just for the Ad Hoc build which is identical apart from the get-task-allow flag:
To ensure this new Entitlements file is used you need to modify the Code Signing Entitlements setting in the AdHoc configuration to reference the new file.
7. Build and Archive
With the AdHoc build settings active use the Build and Archive command to create the distribution build. Assuming the build was successful you should find it in the Xcode Organizer in the Archived Applications section. You can add a name and comment to the organizer for future reference at this point.
8. Sharing the Application
The easiest way to send the application files to a beta tester is to use the Xcode organizer to create an ipa file. To do that select the AdHoc build in the Archived Applications section and use the Share button and then select Save to Disk. Xcode will create a signed application file and save it to disk with a name of your choosing. Name the file something useful like appName-x.y.z.ipa where x.y.z is the version number.
You can then send this .ipa file together with the .mobileprovision file to your beta tester with instructions to drag onto their iTunes library to install it on the test device.
For sharing and application versioned release management you can also use testflightapp
You should add your device UUID to your iOS provisioning portal. Create an App id. Create a mobile provisioning profile by selecting your device and App Id. Download and install that profile to your device. The build and run your app on the device. Please let me know if you need further clarification.

How do I build an xcode project for the itunes store?

I've got my apps running on my iphone, great, however to list on the itunes store I need the "universal binary" thing.
I've tried finding answers, but I can't seem to find a concise useable explanation to doing this in xcode. I always get errors when I try to build a binary. Can anyone point me towards a basic step-by-step procedure I can follow to creating a universal executable binary which can be uploaded on the itunes store?
One more thing, is there some type of app, like the rename project app, or applescript thing, that can do this for me with a few clicks?
Try this:
Prepare a new provisioning profile for App Store
Make sure you have Ad Hoc distribution working OK.
Go onto the Program Portal > Provisioning > Distribution
New Profile button
Distribution Method: App Store
Profile Name: MyApp App Store (or whatever)
App ID: MyApp (you have already created one right?)
Submit button
Set up the new profile/configuration in XCode
Download the certificate (you can click on the Distribution tab to reload that tab while it's being generated) and load it into XCode
In XCode, open your project and go to Project > Edit Project Settings (or double-click on the first item under Groups & Files panel)
Configurations tab, click on your existing Ad Hoc distribution configuration, that already works, and click Duplicate button. Call the new one "App Store"
Click on Build tab, then under Code Signing > Code Signing Entity in the popup choose "iPhone Distribution - MyCompanyName" under "MyApp App Store"
Build & Upload to iTunes Connect
Clean all for good luck, then set Active Configuration to "App Store", build & go. Test it on your iPhone.
Find your built app in the Finder, in your project directory > build > App Store-iphoneos > MyApp.app ... right click and "Compress MyApp.app"
Upload resulting MyApp.zip to iTunes Connect.
A Universal Binary has nothing to do with it. To distribute through the App Store, you need to create a Distribution provisioning profile. The iPhone developer portal has step-by-step directions for this. look under the "Distribution" tab.
I followed the instructions listed by sbwoodside but had problems with the last part (Build & Upload to iTunes Connect). I realized that the built version didn't run on the device. This is what worked for me:
Build & Upload to iTunes Connect
Clean all for good luck.
Go to "Edit Scheme" and in the Archive menu, select the App Store
build configuration.
Select iOS Device or a specific device in the drop down menu and go
to Product->Archive.
Once Xcode is done archiving, it will open the organizer window and
show the archives section. Select the last archive and click
"Submit".
You will be asked to enter your distribution certificate. Select
the one created for the App Store.
XCode will upload the app to iTunes Connect without the need of
using Application Loader. For this to work, the app has to be in
"Ready to Upload" status in iTunes Connect.
You won't get to test the last version with the device. Therefore it's best to make an ad hoc version before to be able to test all features and once everything is working, duplicate the ad hoc configuration for the app store.
Once you have your provisioning profiles downloaded and installed you need to make some changes within XCode to get the app to work on your iPhone and eventually to submit to the iTunes store. You'll also need to add an Entitlemests.plist object to your project. You also need to tweak your build profile and your info.plist to point to your application name.
But as Mark B already said, just got through the developer portal and follow those instructions. Just make sure your define the right provisioning profile for the purpose.