List of iOS devices that support compass/geomagnetic field - iphone

I am developing an augmented reality iOS app (iPhone/iPad/iPod) and I would like to have a list of devices where this feature is supported.
I mean the compass and the geomagnetic field so that I can get the orientation of the device in all degrees of freedom.
Thanks!

The compass is available on all iPads and on the iPhone 3GS and 4.

I was also wondering if there are any devices left capable of running iOS7 or iOS8 without compass feature and a quick research pointed out the following:
Compass available:
on any iPhone 3GS or later. iOS7 support from iPhone 4 or later, iOS8 support from 4S or later.
on any iPad. iOS7 and iOS8 support starts with iPad 2 or later.
Compass not available:
on any iPod touch. 5th generation (current model as of 2015) does support iOS7 and iOS8
So if you design an application for iOS7 or iOS8 and only for the iPhone/iPad there will be heading available. For the iPod touch not.

Compass does not provide orientation in all degrees of freedom, although you can get that data from the orientation sensors.
You should also look at the gyroscope (iPhone4 and iPod touch 4 only so far), which provides much more accurate and faster orientation sensing in all degrees of freedom, see UFO on Tape for an excellent example.

Related

Camera functions don't work on iPhone

I recently published an app that works perfectly on my iPhone 4, where I rely on people zooming in in the camera portion. I can zoom and turn off flash and flip the camera, but everyone else's iPhone 4 can only tap to focus and all other controls are on the screen do nothing. I am testing on iOS 5, and everyone else is using iOS 4.3.4. I haven't tested on any other iOS 5 device. Any reason those options would only work on my phone?
You're probably using iOS 5 specific functions which are not available on lower versions of iOS. Once iOS is out of NDA, perhaps someone will elaborate on why. Until then, discussion iOS 5 is a violation of your (and our) terms of use with Apple.

how to detect mic position on iPhone?

iPhone 4 has a mic on bottom-left, iPhone 3GS and earlier had a mic on bottom-right.
How can I detect where is the mic on iPhone? What function does that?
You will have to detect the specific model of device (e.g. "iPhone2,1", etc.) and do a table look-up from information you determine. And to future-proof the result, you may also have to have it look up the position of the mic from your web site, where you can keep a table updated with device types as Apple introduces new ones.
I would not use the method as said in the comment to your post. The minute the new iPad or iPod Touch is released with a front facing camera, your application is off.
Why not just use a method like in this post: Determine device (iPhone, iPod Touch) with iPhone SDK
The code (if you scroll a bit down) shows how to detect which version of iPod/iPhone/etc is running on.

Can the same app be used for both Iphone and Ipod Touch?

can a single application be used in both iphone and ipod touch > or we have to build them seperately ? Are there IPod only applications ?
They all work for both unless there are specific features that only the iPhone has, but everything the iPod can do, the iPhone can. You have to check for the specific features while programming to make sure it'll work on the iPod if you have optional features that will only work on the iPhone.
Examples:
-GPS
-Camera(for 1-3rd gen iPod Touch)
-3G network, although most of the time apps will default to wi-fi if
you're connected
-Gyroscope(for the new iPhone 4 and ipod Touch 4g models only)
-Some apps are intensive so the programmer might restrict it to the
newer 1ghz cpu that only the iPhone 4 and iPod touch 4g have now
-Retina Display check(again only iPhone 4 and iPod touch 4g)
-Multitasking(iOS 4 only on certain models)
-Microphone(iPhone and iPod Touch 4G, earlier iPod Touch models need headset)
-Bluetooth(iPod Touch 1G and 2G don't have it)
Although some 2G models later enabled bluetooth with OS 3.0

Does a third-generation iPod Touch support video compositions?

In my project I use AVVideoComposition, it only works on iPhone 3GS and iPhone 4. On iPods and iPhone 3 it returns exception that this library is not supporting by that device, so is anybody know did the new iPod touch supports that or not?
The third-generation iPod Touch should be supported, see the slides from WWDC session 407:

Multitasking on iOS4: Does it work only on iPhones?

I have iOS 4.0 on an iPod Touch 2nd Gen.
There's absolutely no multitasking working. Nothing goes to the background, and double-tapping the Home Button results in just nothing. I wanted to test my app against this new feature, but it appears that it doesn't work for iPod Touch devices?
Does that only work on the iPhone? Or is there some minor upgrade like 4.0.0.1 that enabled multitasking? Or must I enable that somewhere, manually?
Really strange. I do the exact same thing like the Apple guys do in the demo videos.
The documentation says:
The ability to run background tasks is not supported on all iPhone OS–based devices. If a device is not running iPhone OS 4 and later, or if the hardware is not capable of running applications in the background, the system reverts to the previously defined behavior for handling applications.
You can test if it's supported with the following code:
UIDevice * device = [ UIDevice currentDevice ];
BOOL backgroundSupported = NO;
if( [ device respondsToSelector: #selector( isMultitaskingSupported ) ] )
{
backgroundSupported = device.multitaskingSupported;
}
Multitasking only works on the 3GS iPhones and up. You are out of luck with your 2nd Gen iPod Touch (its like the iPhone 3G, sort of). Sorry.
EDIT: You would need a 3rd Gen iPod Touch, just to be clear.
You need a 3rd gen iPod Touch for that to work. I've run into the same issue.
According to this wikipedia article (see features section) multitasking is supported on 3rd gen iPods only
Apple's official ipsw's (iphone software) have disabled multitasking for ipt2g. If you jailbreak you can enable multitasking for your device but the performance will be poor.
Mutitasking is supported by 3 generation n 4g ... Iphones
I believe UILocalNotifications, part of the multitasking package, are supported on the 2G iPod Touch and the iPhone 3G.