iphone app don't want to build my ipa - iphone

I want to test my app on a device, so I encode my device on the portal,
I made a new a distribution provisioning profile on ad-hoc mode. I download it,
and install it on my XCODE.
I checked on the informations about project and targets (all sounds correct but I'm not a specialist of those configuration) :
first shot second shot
And When I build for provisionning (with appname>IOS Device next to the "Play" button), it gives me :
error: error reading property list '/Users/...iphone application V1.0/e-mars/emars.entitlements' - property list has no object
Command builtin-productPackagingUtility failed with exit code 1
Could you please help me?
*EDIT : *
Product : Build for : Build for Profiling (and normal build with the emulator) run when I select emars > iPhone Simulator next to the play button
*EDIT 2 : *
I've tried to change the Bundle identifier :
I had com.elsingor.${PRODUCT_NAME:rfc1034identifier} and I put com.elsingor but it's the same issue...
EDIT 3
I'va created a new Entitlements and edit the reference in the plist to the new entitlements and...
Now I build with myApName>IOS Device on clicking on Build for archiving.
I again have a problem; I didn't see the Archive in the Organizer! Please help me :-/
FINAL EDIT :
I tried to press simply Build instread of build > build archive and it works for me !

i followed this tutorial to do my ad hoc builds
http://www.musicalgeometry.com/?p=1237
but you can of course also take a look at the documentation at testflightapps.com
http://support.testflightapp.com/kb/tutorials/how-to-create-an-ipa-xcode-4
you will see in the first post they talk about creating an entitlements.plist file and maybe thats where your problems is. i would also say because i ran into this problem, when everything is done and its time to "Archive" make sure the simulator is not selected. iOS Device needs to be selected for Archive to not be greyed out.
iPhone ad hoc build using Xcode 4
i have never done an adhoc build on its own, i always use testflightapps.com to distribute (so for this you will need a distribution cert as well) my apps and i recommend using them. Overall it was a fairly simple process and they do have free accounts so theres no reason not to use their service.

If you want to test on your device, do a development build instead of adhoc.
Go to the iOS Provisioning Portal in the dev center (https://developer.apple.com)
1) First you need to add your device.
2) Create a Development Profile - include this device in it.
3) Download and install in xcode.
4) Select this profile in the Code Signing section of Project and Target Build Settings
5) Connect your device to the computer you are working on
6) Select scheme that corresponds to your device (if you have an iphone it will Read
iPhone your.ios.version)
7) Hit Run - the code will build, install the app on your device, run it and will connect the debugger.

Related

What steps can I take to get an ipa file generated by xcode onto a test ios device?

I want GUARANTEED steps to get this to work.
I've pulled my hair out on this task many times since I started doing this work 6 months ago, and the feedback from itunes and the organizer is non-existent.
I have full access, I can go into the apple dev centre and do whatever is necessary and I know my way around xcode now.
Currently, when I connect my iPhone and click applications under the iphone [on the left in the organizer] the add and remove buttons are disabled and I can't click and drag ipa files into it.
If I open itunes and click and drag my app into the applications area for my macbook, it works and overwrites the current app, but when I try to click update, then sync, it successfully syncs, but still has the button saying "update" instead of "install", and when I view the phone it says " failed to install" or some other ridiculously generic message.
I've also tried to create a new profile, but when i use the add button in the organizer to attempt to add it to my iPhone it accept the file, but doesn't shot i on the list. I click and drag and it's the same thing, no error and it looks like it'll accept it, but it doesn't show up on the list. So I can't seem to attempt to add a new profile.
BTW, The device is in the devices list and has a valid profile [and the profile has the device in the list of devices (and the UDIDs match)].
I'm looking for some solid steps to guarantee the app will be installed on the phone without these headaches.
Xcode: 4.5.1
iphone: 6.1.3
Any help you can give would be greatly appreciated. Honestly, I'm ready to quit my job because the stress this software is causing me, this is ridiculous.
(my frustration: I've had compilation errors that are resolved by restarting xcode, I've had to restart my computer to resolve profile issues, and far too many times I've had to flush everything just to deploy to the app store... I've never dealt with such a terrible awful piece of software and toolchain in my entire life [and I've used Windows and VS!])
Check out TestFlight - http://testflightapp.com
They give step by step instructions on how to distribute ad-hoc versions. Its very easy to set up.
Set up your provisioning profiles, build/archive your app, then distribute it via TestFlight.
See http://help.testflightapp.com/ for help.
Follow the Steps:
1 - Create a provision profile Distribution for your app ( don't forget to add the devices, witch will test this. Its very important because case you dont add then, they will not have permition to install the app.). After create download and double click it. Don't delete yet, you will need it to upload after.
2 - Go to your project, Build / Targets / Build Settings / Code Signing and set the provision profile you create.
3 - Build the project. If its ok, click in product, archive
4 - Click in Distribute, Save for Enterprise or Ad-Hoc Deployment. Save your .ipa
5 - Go to TestFlight Create the app and upload the build.
6 - Go to Apps Builds and click in your app.
7 - Go to Permitions and Upload the Provision Profile!! Now you can choose in this list who you want to notify about the app to download!
8 - (Optional) Go to People and create/manage your team giving the right priorities.
You should implement the SDK case you want to manage the Sessions. Its Very simple, just follow the tutorial Documentation and the sdk iOS SDK Download
Follow below steps to install .ipa file without using testflight
Extract the folder which contains files .ipa and .mobileprovision .
Open iTunes and connect your device.
Drag and drop .mobileprovision on Library->Apps group section of
iTunes.
Repeat above step with .ipa .
Sync your device and it's done.

Accessing iPhone app logs from Ad Hoc build OR transferring project build to another machine

I'm developing an iPhone application with Xcode 4.5.2, and when I run the app on a device or in the simulator, via Xcode, the logs are showing in the Xcode Console.
My question is, when I build an Ad Hoc distribution build and install the app on a device and run it from the device, is there any way to watch the log output? I need to tech support the app remotely and want the tester, who is elsewhere, to be able to see the logs.
Question two, can one build the project and and export the build, import it to Xcode on another machine and just execute it from Xcode without building? This would solve the problem since the tester would be able to run the app from Xcode and thus see the logs.
The problem is that I'm using Sencha Touch, which isn't that easy for the tester to set up so that he can build the project locally. In short, I need the tester to access the log output so he can inform me of it, without having to build the project in Xcode.
Question one, answer one: If you use NSLog and you can not change this in the code then there is no way to see the log output right on the device. However it is possible to see the same log output as you see in the debug output window also without XCode. Download the (free) iPhone Configuration Utility for Mac or Windows. Once the device is connected you can select the device and switch to the Console tab to see all debug output messages, including that one of your app.
Question one, answer two: if you can modify the logging code I strongly suggest you to use a logging framework. There are a lot of them out there and they allow you to save your log lines to files, upload them to a server or let the user email them, etc. etc. features vary. Two examples are CocoaLumberjack and SNLog but it is likely that you find another one that suits even more your needs.
Question two: Yes, it is possible, but the guy whom you send the app will need a Developer Certificate (or the key of your Ad Hoc certificate which I guess you don't want to give out) to be able to install the app on his phone. The format that you should use is xcarchive. Select Product -> Archive from Xcode. When the archiving has finished the Organizer will open with your new archive selected. Select Distribute -> Export as XCode Archive. You send the resulting xcarchive to your tester, and when he clicks on it (having XCode installed) it will import your compiled app as an archive in XCode organizer exactly the same way you see it. Then your tester still needs to sign it before installing on his device (by selecting Distribute / Save for Ad Hoc deployment).

Preparing Ad Hoc Distribution for my app

I have been reading several tutorials and watching some iTube videos to see how I best prepare my app for Ad Hoc distribution. However the information I got is not really consistent, it goes from the 5 step explanation from the Developer Center of Apple to a almost 3 minutes video, where I would have to set some Code Signing options in XCode, create and zip the Archive etc.
My questions:
1.
Is there a tutorial available, which explains everything required, but not too much? I somehow feel, for instance, that code signing is not really required.
2.
After I tried to install the app using iTunes, the synch claimed that it was not able to install it. Is there some log available in iTunes, so I can check for further error details?
3.
How about switching from Ad Hoc distribution mode to normal developer mode? After I followed the steps from the video and prepared my app for Ad Hoc distribution, I was not able to install it on my device anymore, I got the error
Build target Abiliator
Check dependencies
[BEROR]CodeSign error: code signing is required for product type 'Application' in SDK 'iOS 5.0'
This is the video tutorial on iTube I followed: Demo of iPhone app Ad Hoc distribution
Thanks for your feedback and have a great weekend.
OK, looked up the Error
" the following job tried to hijack the service..." and saw that a reboot of the iPhone may solve the issue... and guess what, I was chasing a phantom all day long.....
It works perfectly.
So last hint for anyone, having a similar issue, after installing an app via Ad Hoc the first time: Reboot iPhone, otherwise the app may crash.
Cheers and now good nite :-)
PS: Just to round this thread up here the steps I did at the end (as mentioned, I am using XCode 4.2.1) :
Added my device on the Provisioning Portal (this had been done long time ago, however it is an important step, as the beta testers device IDs also need to be registered here before you re-create and download the distribution profile)
Created and downloaded an iOS Distribution Certificate in the Provisioning Portal
Imported the certificate in my Keychain
Created a Ad Hoc Provisioning File in the Provisioning Portal
Downloaded that profile
Double clicked the profile, which added it to the XCode Organizer Provisioning Profile Section)
Added the options Any SDK and Any iOS SDK in for Ad Hoc Distribution Code Signing Identity in the Code Signing section of my project AND my target and set the values with my Ad Hoc Provisioning File I just created and imported
Made sure the option in my app .plist file "Application requires iPhone environment" was set to true
Ran a clean (Product / Clean) and then a build only (Product Build)
Made sure the app was not installed on my iPhone (as I was testing before via XCode)
Copied the target (group Products via Show in Finder) to iTunes via Drag and Drop (I dropped it into the Media section)
Copied the Ad Hoc Provisioning File into iTunes via Drag and Drop (also to the Media section)
Made sure the app was checked for the synch, synched iTunes with the iPhone
Lastly rebooted my iPhone! However, I am pretty sure, that this might occur on the Developers device only. I assume that the reason for that was a process, still remaining on the iPhone, from my last test via XCode.
I did not use an entitlements file. I have actually to find out, what that file is really for, I have read that it might be required only, if using iCloud. And XCode 4.2 developers, there is nothing like File / New / Entitlement Template anymore in XCode. The file is created as soon as you check the option Entitlements and give the file your desired name in the Summary tab of your target.
You may also want to download the iPhone Configuration Utility from apple
I will also recommend this to my beta testers, as it allows you to see the console log of the iPhone, which of course might be very helpful in case of errors.
Hope this summary helps others, setting up their app for the first Ad Hoc distribution.
Cheers, René
code signing is simple.
first you create a mobileprovisioning profile for your apps bundle identifier also add the devices you want to built the app for. for adhoc build do it in distibution tab. download it, double click add it to keychain.
now you tak your app in xcode.select coreect profile(code signing). set command line build to distribution, oh i forgot create a new file(entitlements.plist) set debug inside it to false, add its relative path in the target, just above codesigning specified. now select the iosdevice on top left(where you select the simulator) press command+b to build the app. the app would be in the products folder(at the bottom) locate it in finder drag it to itunes, may be provisioning profile too, and sync it. done.
Go to https://developer.apple.com/devcenter/ios/index.action and login. You can find 'iOS provisioning portal'. And after going there, choose 'Distribution' section. Select "HOW TO", you can find necessary steps there.

How to put an application on an iPhone/iPad device?

I have an application that I developped using the iPhone/iPad simulator.
I am now at the point I want to test it on a real device.
I just got a license from apple.
Where should I go on the net to find out the information on how to transfer my application to a real device ?
Thanks.
Check out this article,
http://mayurbirari.wordpress.com/2011/01/20/ad-hoc-distribution-build-for-iphone/
you can create adhoc build and install this application not only on your device but on multiple devices.
Follow Apple's guide here:
http://developer.apple.com/library/ios/#documentation/Xcode/Conceptual/iphone_development/128-Managing_Devices_and_Digital_Identities/devices_and_identities.html
If you log into the iOS Dev Center using your new account details, you will find a link on the right-hand side named "iOS Provisioning Portal".
When you reach the portal home page, there is a panel that allows you to launch the Provisioning Assistant wizard. This will walk you through the process.
This may be worth following for the first time, then evaluate the entries in the various parts of the provisioning portal to see how you can set this up manually in future.
If you've followed all the instructions for setting your development environment up after signing up for the Developer program it's just a case of changing the target from Simulator to Device in XCode and then running it. Your app will be transferred to the device and executed on it.
You can follow any one of these links :-
1) http://developer.apple.com/library/ios/#documentation/Xcode/Conceptual/iphone_development/128-Managing_Devices_and_Digital_Identities/devices_and_identities.html
2) http://mobiforge.com/developing/story/deploying-iphone-apps-real-devices
EDIT : If you've got the license , go to your Apple ID -> Provisioning Portal -> Certificates -> Download the Certificate.
Save it to the Disk.
Double Click on it to install.
Open your XCode.
Change the Build from Simulator to Device (Make Sure your device is connected.)
Just Build and Run.
Hope this can help you :-)

Code Sign Error When Building iPhone Application

I am new to iPhone development. I just registered with Apple for the iPhone Developer Program. When I try to build, I am receiving an error:
Code Sign error: a valid provisioning profile matching the application’s identifier could not be found
I'm not sure what is wrong. I tried browsing the Internet but I get confused. Can anyone help me with what I should do?
At first it seems a complex process, but it's pretty straightforward when you've been through it a few times.
In a nutshell the process is this:
(I'm assuming you've set up your iPhone/iPod touch as a test device)
Via the iPhone Developer Portal
Create an App ID
(give your application a name, this is just for reference on the website and nothing to do with your own build of your application)
enter a string to identify it, like com.yourcompany.appname
(this is important and should be the same as in your .plist file inside Xcode)
Click and Save this
Go to Provisioning
There are 2 provisioning profiles you'll need
a) development - so you can install your application on a test device (i.e. your iPhone / iPod touch)
b) distribution - if you want to sell the application via the App Store
You can create the profiles by selecting your App ID, created in the previous step, from the drop down list and clicking Save
In a few moments (usually, though it can be longer) the certificate is available for download. Download this to your Mac and drop it onto the Xcode icon. Sometimes the development profile doesn't work for me like this and I drop it directly into the Organiser window in Xcode that shows my connected device.
Besides, if you are in a team account, team admin need to edit Development Provisioning Profiles, and add modify your certificates privilege.
In Xcode inside 'Edit Project Settings' you can select the certificate you wish to code sign with. Usually for debug I sign with the development certificate. Follow the instructions on the apple site and clone the release profile and call it something like release and sign this with your distribution profile. (You won't be able to load the app onto your phone with the distribution profile selected)
Make sure you select the target device as Device and not Simulator when building for the App Store!
Hope that helps, it's from memory so apologies if I've skipped some small steps.
xcode top left corner make sure you're running as "similator" "iphone"
Did you set up an iPhone provisioning profile for either development, ad hoc distribution, or app store distribution?
If not go to the iPhone developer program portal, which is linked from the developer.apple.com/iphone. Apple has provided a great series of video tutorials.
Just make sure you install the certificates or the profile won't be selectable in the project configuration. When you download the certificates double-click on them to install.
Possibly more use for others seeing this issue on a previously configured dev environment.
This error is also shown if your provisioning profile has expired, in this case you can go through the steps in Neosionnach's answer or you can go to Organizer, click on the profile and click Refresh.
This was the winner for me when I had this issue.
As of July 2012, you can go here:
https://developer.apple.com/ios/manage/overview/index.action
Then launch the "Development Provisioning Assistant." It walks through all the steps outlined by FiddleMeRagged.
You can use this process to create a Wildcard ID, if you're just looking to test your app on your iOS device and don't need to deploy to the App Store right away.