views:

1892

answers:

10

Essentially I'd like to know just host compatible are the iPhone and the iPod Touch. I would like to know if I could buy an iPod Touch (and thus save some cash) and develop iPhone apps on it or if I really should spend the extra money and put up with AT&T and get the iPhone.

What exactly is different between the two devices (other than the missing phone part in the iPod Touch).

Has anyone done this successfully? Or am I crazy for even thinking it?

EDIT

I've corrected the references to iPod Touch in the text so that @person-b won't strangle me..

Also, i would like to make sure that I point out the fact that I really am interesting in the feasibility of developing iPhone apps on an iPod Touch.

+1  A: 

Yes, this would work fine. They will be more even product lines after apple updates the ipod's to the same internal tech specs as the new iphone. The "iPod Touch" is just like the iphone software wise except for the hardware specific apps.

The iphone has a few more hardware features over the ipod touch like the cellular radios of course, camera, microphone, compass (3gs), and GPS.

So if you are not developing any application that uses any of those device features, the ipod touch should serve you well.

Troggy
+1 Do you have any experience testing iPhone apps on the touch?
Miky Dinescu
+4  A: 
  • No GPS
  • No 3G Chip
  • Different CPU Speed (depending on model)
  • No compass (if we're talking 3GS)
  • No camera.

Other than that, the apps I'm working on work as well on our graphics guy's iPod Touch as well as on the 3G/3GS

Chaos
I think that the original touch didn't have volume buttons while the 2nd gen one does as well, which is a hardware difference between touch generations, but i could be mistaken and that's probably not a big deal in the scope of the question.
Kevlar
I think you might be right.
Chaos
Different CPU speed - faster than the iPhone 3G, slower than the 3Gs. No GPS, but you can still use location services, it locates position from WiFi signals. The major difference, is really the camera...
Kendall Helmstetter Gelner
+1  A: 

Aside from the other features lacking that other people have listed, the iPod Touch also lacks a built-in microphone, so apps relying on audio input are also a problem.

In general, though, the iPod Touch makes a great testing and development platform for general-purpose apps or games.

Gabriel Hurley
+1 for pointing out the lack of microphone..
Miky Dinescu
heh. thanks! I've run into the issue before... ;-)
Gabriel Hurley
You can attach an external microphone for testing though.
Kendall Helmstetter Gelner
including, I believe, the iphone mic/headphone combo.
John
A: 

A quote from gizmodo.com

The iPod runs Mac OS X like the iPhone does and we have got unofficial word from inside Apple that it runs exactly the same applications. The exact quote: "they use the same damn binaries".

That quote is from an article that is almost two years old now, and I haven't seen anything to suggest it is incorrect.

So as has been said, as long as you aren't trying to develop hardware specific applications then using the iPod Touch should be fine. Though personally I believe if you intend to develop for a platform you should use that platform. I also understand the iPhone is expensive so I don't blame you for wanting to save some cash. :)

Peter Spain
+1  A: 

One thing to bear in mind is that the second generation iPod Touch has a more powerful processor than the original and 3G iPhone. If the app you're making is a particularly CPU intense one, you may want to pick up an old iPhone to test against.

There are also a lot of used first generation iPhones out there. You don't need a plan to use them to run apps and get on the Internet via wi-fi. If you really need to test against the older iPhones, you should be able to get one used and not pay AT&T for a subscription.

Warren Pena
And if you're really serious about compatibility with a CPU- or memory-intensive app, you should really own one of each iPhone and iPod Touch model — at least as many models as there are processor/memory combinations
Jeff Kelley
Indeed. That should only be three of them, though. The iPhone, iPhpone 3G, and 1st generation iPod Touch all had the same CPU and memory, if I recall correctly. The 2nd generation iPod bumped up the CPU a bit, and the 3GS bumped it up some more and doubled the RAM.The additional Flash memory shouldn't have any effect on the performance, of course.
Warren Pena
+10  A: 

As @Chaos noted, the iPhone and iPod touch differ in their hardware features. The iPod touch lacks:

  • GPS
  • 3G/EDGE cellular connection (that is, it can only connect to WiFi networks)
  • Compass
  • Camera
  • Built-in microphone (the second generation iPod touch supports external microphones; the first generation doesn't)

As for the CPU speeds, Apple doesn't publish any kind of spec for that. However, the iPhone 3GS is definitely faster than the current iPod touch, which is a bit faster than the original iPhone and the iPhone 3G. If your app is CPU-intensive, you should test it on an older iPhone.

Another important difference is the networking capabilities of the different devices. If your app never has to connect to the Internet, then an iPod touch is just fine. However, if you're using the network at all in your app, remember that WiFi connections are nice and stable and fast, but 3G and EDGE connections are slow and crappy and prone to intermittent failure. Your app needs to be able to deal with a crappy Internet connection. You don't actually need an iPhone to test this stuff, though; instead, you can write a script to artificially throttle or interrupt your development machine's network connection. Craig Hockenberry posted a good method for doing this, which you can find reproduced here.

zbrimhall
I've found the 3G network layer in the SDK to be quite fault tolerant, as long as you code right. We are about to release an app that does a lot of photo uploads/downloads, of files ~ 50k in size. I'd say somewhere around 0.5% of them fail - and we put retransmit code in to handle those cases.
Chaos
Good to know. Best of luck on the upcoming release!
zbrimhall
A: 

Hi, Many people have give pretty good answers. But they have really only pointed out the difference and have not said if you should get an iPod Touch or an iPhone.

GET AN IPHONE

It is simple as that.

  1. It does more than an iPod touch as listed above.
  2. You can use it as a phone and replace your existing phone.
  3. Once your game actually sells you will end up getting an iPhone anyway because you are now making money, you will then need to sell you iPod touch at a loss (you dont really need it).
  4. You will build more than one app in the next year and one of them might rely on the iPhone camera, GPS, or even Video, maybe even compass, you will need an iPhone for all this.
  5. You will now want the internet where ever you are to check you sales stats every day when they come out.

Save you money, buy one device, buy an iPhone and sell your old phone.

John Ballinger
Your only valid point is #4, the others are only very subjective. I will not sell my phone, I will not buy an iPhone (at least not for personal use)..
Miky Dinescu
John
+7  A: 

As far as general software development goes, getting an iPod Touch is a fantastic way to get into iPhone app development. I live in Nebraska, where AT&T coverage is spotty at best (my friend's iPhone doesn't get a clear signal in my house). You won't get the bells and whistles of a 3GS, but you'll save on the up-front investment.

I recently purchased a MacBook and a 32GB iPod Touch to do just what you're suggesting - get into iPhone app development on a budget. In the end I plan to pickup several more devices, but just to get started it doesn't make sense to break the bank. I've developed Windows and Linux software but I'm new to Objective-C and the Mac platform in general, so I'm expecting a learning curve. I'd prefer not to be forking over $100 per month to AT&T while I get up to speed.

Here's what I paid for new-in-the-box hardware and software from Apple to get started:

  • MacBook - $1070
  • iPod Touch 32GB - $428
  • iPhone 3.0 OS upgrade - $10.70

All told I've spent $1500 (including tax) to have a viable development platform. According to BillShrink the TCO of a 16GB 3GS with an average usage plan is $2800 (http://www.billshrink.com/blog/iphone-versus-palm-pre-versus-android/). Add in the MacBook and you're up to nearly $4000 in the first two years. I got 2X the capacity for $440...

While I agree that going straight to the iPhone provides the most flexibility, I also think that the iPod Touch is a great introduction to Apple's new software platform. You can save up to $2400 (depending upon how much your current cell plan costs) while getting a feel for the development process.

Update: One major reason to get the iPhone 3GS is to get OpenGL ES 2.0 support. If you want to do any advanced shader-based rendering, the 3GS is the only iPhone that will work. The 3GS is also nearly twice as fast as the 2G iPod Touch for OpenGL ES 1.1 code. Source: http://toucharcade.com/2009/06/20/iphone-3g-s-vs-ipod-touch-cpu-opengl-es-benchmarks/

Will Bickford
+1 A good argument backed by financial data and personal experience..
Miky Dinescu
I'm enjoying the development process on the iPod Touch so far. Added a note to my answer about OpenGL ES support.
Will Bickford
+2  A: 

I started developing apps for the iPhone on my iPod Touch, here these gadgets are really expensive... and that is a bummer..

The only problem i have encountered while developing was the lack of 3G and the GPS because i wanted to see how my apps will work on 3G compared to WiFi and also i wanted to use the Maps Api but the Touch doesn't have the GPS and i had to find an iPhone to test my app..

If you want to start developing i think the ipod touch is a good starting point also, the 3GS is really expensive(here - Romania - is like 1100 euros - 2 year contracts) and the 3G also(still 600 - euros - 2 year).. so if you only want to play with cocoa and build small apps for free... keep in mind the costs.

The first generation of ipod touch didn't had the volume buttons, the second generation has them..just to confirm

SorinA.
+1 Your answer was very true to the nature of my question!
Miky Dinescu
A: 

The September 2010 iPod Touch has 2 cameras and a microphone. It has the same functionality as the iPhone4 apart from the phone part & doesn't have GPS.

I think it's better to spend money on a iPod Touch 4th gen than on an iPhone 4 (unless you need really accurate GPS coordinates in your app).

Marius Ciocanel