How to configure iOS app to work on specific devices? - ios

I am developing iOS app with ZBar SDK for QR-codes scan. Here ZBar SDK creators tell us that
Only the iPhone 3GS and iPhone 4 are supported, as they have a camera
with auto-focus. The ZBar library does not support the iPhone 3G and
is unlikely to ever support it.
So I have added auto-focus-camera key to the Required Device Capabilities section of my plist. All is great, except one thing - iPad 2 & iPod Touch 4th Gen doesn't have auto focus camera, but still are able to use my ZBar SDK code to scan QR-codes. But my auto-focus-camera key doen't allow users with iPad 2 and iPod Touch 4th Gen to download my app from App Store.
In other words I need to find a way to make my app installable via App Store on these devices:
iPhone 3GS.
iPhone 4.
iPhone 4S.
iPad 2.
The New iPad.
iPod Touch 4th Gen.
And on these devices my app should not be available:
iPhone 2G.
iPhone 3G.
iPad.
iPod Touch 3d Gen and
My question is: how to make my app available in App Store for first list devices' user and not available for second list devices' users?
Any help will be appreciated!
PS: I have seen this question on SO, but it doesn't help me much.
PS2: This app has the desired set of available devices.
Requirements: Compatible with iPhone 3GS, iPhone 4, iPhone 4S, iPod
touch (4th generation), iPad 2 Wi-Fi, iPad 2 Wi-Fi + 3G, iPad (3rd
generation) and iPad Wi-Fi + 4G.
Does anyone know, how they did it?
PS3: At the same time adding both still-camera and auto-focus-camera gives us this:
Requirements: Compatible with iPhone, iPod touch (4th generation),
iPad 2 Wi-Fi, iPad 2 Wi-Fi + 3G, iPad (3rd generation) and iPad Wi-Fi
+ 4G.
And that is not a great way as long as we have all iPhones as suitable for our app, instead of 3GS, 4 and 4S.
PS4: My app is here and it has such requirements:
Requirements: Compatible with iPhone 3GS, iPhone 4, and iPhone 4S.

Word Lens requires the armv7, opengles-2, and video-camera device capabilities.

I'm not sure that you can do that
Maybe you can do a check in your code and if the device model is not the good one, just pop a new view saying that the model that the user is using can't make work the application ?
You can detect the model with this:
#import <sys/utsname.h>
NSString*
machineName()
{
struct utsname systemInfo;
uname(&systemInfo);
return [NSString stringWithCString:systemInfo.machine
encoding:NSUTF8StringEncoding];
}
and give that:
#"i386" on the simulator
#"iPod1,1" on iPod Touch
#"iPod2,1" on iPod Touch Second Generation
#"iPod3,1" on iPod Touch Third Generation
#"iPod4,1" on iPod Touch Fourth Generation
#"iPhone1,1" on iPhone
#"iPhone1,2" on iPhone 3G
#"iPhone2,1" on iPhone 3GS
#"iPad1,1" on iPad
#"iPad2,1" on iPad 2
#"iPhone3,1" on iPhone 4
#"iPhone4,1" on iPhone 4S
Else you can try sending an e-mail to apple

We need to use video-camera key in Required Device Capabilities section of app's plist.

Related

Does iPad 2 support for Core Spotlight?

My iPad 2 has iOS 9.3.2 but still Core Spotlight doesn't work.
Want to know whether it is supported or not?
As per the Apple documentation :
NOTE
Although app search is available in iOS 9 and later, the search functionality of NSUserActivity and Core Spotlight is not supported on iPhone 4s, iPad 2, iPad (3rd generation), iPad mini, and iPod touch (5th generation).

How to add ipod in the simulator of xamarin

I am trying to add ipod in the iOS simulator of xamarin(in Debug mode).Any suggestions.
Apple doesn't provide a specific iPod simulator, only iPhone and iPad in various forms. They have never provided an iPod simulator.
If you want to use an iPod due to the 4" screen, you can use the iPhone 5, iPhone 5s or iPhone SE simulators as they all share the same screen size.

Xcode 8 and ipod touch [duplicate]

This question already has an answer here:
How to get iPod Touch simulator in Xcode 6.1
(1 answer)
Closed 6 years ago.
I need to develop an application to run on a recent iPod touch. Xcode does not have iPod as an option for device (only iPhone or iPad). Likewise, there are no simulators for iPod touch. I've read you can just select iPhone as the device and simulator but I am skeptical that will create an app I can deploy to a iPod. I've also read you can use iPod's to test iPhone apps but this is not my scenario. Is writing apps for the iPod touch with Xcode a bad idea?
Yes, you can develop for iPod touch using Xcode, just as you do for iPhone and iPad. (There is in fact no other way to develop apps for iPod touch.)
The differences between an iOS Simulator and any physical iOS device are much more significant than those between an iPhone and an iPod touch. (No simulator configuration has telephony capability, for example.) If you want to target the 5th- and 6th-generation iPod touch screen size when testing in Simulator, just choose the iPhone 5, iPhone 5s, or iPhone SE simulator, as those iPhone models have the same screen size as the last two iPod touch models.
When you choose an app template upon starting a new project in Xcode, the choice it offers you between "iPhone", "iPad", and "Universal" really means "phone form-factor" vs "tablet form-factor" vs "support both". If you choose iPhone or Universal, you'll get template UI layouts that support a phone-sized screen (or rather, various phone-sized screens, including 4-inch for iPhone 5/5s/SE, 4.7-inch for iPhone 6/6s/7, and 5.5-inch for iPhone 6/6s/7 Plus).

My app doesn't support iPhone 4s & 5 on the App Store?

I have just updated a new version of my app and its not supporting iPhone 4s & 5.
From the App Store:
Compatibility: Requires iOS 8.0 or later. Compatible with iPhone 5s, iPhone 6, iPhone 6 Plus, iPhone 6s, iPhone 6s Plus, iPad Air, iPad
Air Wi-Fi + Cellular, iPad mini 2, iPad mini 2 Wi-Fi + Cellular, iPad
Air 2, iPad Air 2 Wi-Fi + Cellular, iPad mini 3, iPad mini 3 Wi-Fi +
Cellular, iPad mini 4, iPad mini 4 Wi-Fi + Cellular, iPad Pro, iPad
Pro Wi-Fi + Cellular, and iPod touch (6th generation).
My older version did support all iPhone, iPad and iPod touch.
In Build settings the valid architectures are (for both debug and release): arm64, armv7 and armv7s
Under required device capabilities I had armv7. My simulators show iPhone 4 & 5 and it runs great.
How do I fix this?
Thanks in advance
So I found the answer to my question.
When I archived my app I had to select "iOS Device" and not archiving for a device that's plugged in at the time.
Source: https://stackoverflow.com/a/24149087/2053537
Check your info.plist file for items listed under "require device capabilities" It's possible that something has crept into this array that requires iPhone 5S+ to run.
Build Settings -> Build Active Architecture Only (Release) = No

IBM Worklight - Is iPod Touch supported?

I can't find a definitive place that list all the various devices and their versions that IBM Worklight supports. I do not see iPod Touch in the targets in Xcode, but I assume that if iPhone (iOS 5 or 6) is supported and works, then so too should iPod Touch. Does anyone know if it works?
iPod, iPhone, iPad running iOS 5, 6 or 7 are supported.
For a full list, visit:
http://publib.boulder.ibm.com/infocenter/prodguid/v1r0/clarity-reports/report/html/osForProduct?deliverableId=1343665214557
Note that it is the OS that matters, not the specific iDevice.
Creating a Worklight project and application with the iPhone environment essentially means it will also work on an iPod Touch; the only difference is whichever feature exists in one device and not the other, for example - 3G and WiFi in an iPhone versus WiFi or none in an iPod Touch, or making phone calls in an iPhone whereas this is not possible in an iPod Touch, etc...
In the case of Worklight, the lack of 3G or WiFi means that you won't be able to use the Geolocation feature in an iPod Touch, for example. You can follow this logic for any other feature...

Resources