views:

154

answers:

3

My boss wants me to develop some apps and make them appear on the AppStore. This is a very small company, he paid the iPhone developer program fee and I am responsible for the rest, I have full access to the account.

I've finished the development on my mac using the simulator. But now I have to test the app on an actual iPhone before it's submitted to the AppStore for review.

The problem is that my boss and I both do not own an iPhone and do not have much money to buy one.

My friend has one and he can test the app for me if I can provide him with a way to download and install the app (his PC has Windows XP and iTunes installed), we live far from each other so it's not feasible to borrow his iPhone and have it directly connected to my mac and run the Xcode to do the testing.

I am going to skip the Development Provisioning Profile stuff and directly jump into the distribution stage.

I would like to know whether the app file created in the distribution stage (the one to be uploaded to AppStore) can be copied into a Windows platform and have it installed on an iPhone.

+3  A: 

I'm not sure why you want to skip that part of the process, since that's how you'll test your app on an actual device, before getting to the App Store approval process.

If you log in to the Apple iPhone Developer Center, you can click on the Provisioning Portal link to download the Program Guide.

Within this PDF, go to the sections "Assigning Apple Devices to your Team" and "Creating and Downloading Development Provisioning Profiles" to learn how to build a copy of your app that can run on test devices.

Alex Reynolds
How do you get the application onto the actual device without using Xcode's install facilities? I think that's what bobo's asking. (I don't know; we just bought an extra Mac.)
Frank Shearar
+2  A: 

What you're looking for is ad-hoc distribution, which will allow you to hand this application, along with your provisioning profile, to your friend and have him install it in iTunes under Windows. You will need to get the device ID from him first (found in iTunes when the device is connected) to create the proper provisioning file. Apple has thorough instructions on this in the iPhone portal site.

That said, this is a terrible way to do iPhone development. First, not owning an iPhone means that you are probably not familiar with its application UI conventions and how the device behaves in day-to-day use. Things that seem like good ideas when working in the Simulator, which is a mouse-driven environment running on a nice, large monitor, turn out to be unusable on a portable device.

The device also has vastly different performance characteristics than your Mac does. Your friend may be able to point out a few things going wrong, but you really need to hook the device into your Mac and run your application while monitoring Instruments for memory consumption, CPU usage, and other parameters that might point out leaks or other subtle problems. It is for this reason that I spend days hammering on each version of my application on the device before submitting to the App Store.

If you are at all serious about iPhone development (which, judging from the line "develop some apps and make them appear on the AppStore", you are), you need to at least pick up an iPod touch for development. If college kids can pay for one to develop applications on, your company certainly can. Check eBay, where I'm sure people are offloading first-generation models for relatively cheap.

Brad Larson
+1  A: 

Like @Brad Larson said. Get a iPod Touch, I see some 1st gen ones on ebay for $90. Realistically if even a new iPod Touch is too much money for your employer then I'd start looking for a new job. If an employer is too broke to buy you equipment to do your job that costs less then 1 day of work for you it won't be long before they can't pay you. Been there and still trying to get back pay...

jamone