14

我正在使用 ZBar SDK 开发用于 QR 码扫描的 iOS 应用程序。ZBar SDK 的创建者在这里告诉我们

仅支持 iPhone 3GS 和 iPhone 4,因为它们有自动对焦的摄像头。ZBar 库不支持 iPhone 3G,也不太可能支持它。

所以我在我的 plist 部分添加了auto-focus-camera密钥。Required Device Capabilities一切都很好,除了一件事——iPad 2 和第四代 iPod Touch 没有自动对焦摄像头,但仍然可以使用我的 ZBar SDK 代码扫描二维码。但是我的auto-focus-camera密钥不允许使用 iPad 2 和 iPod Touch 4th Gen 的用户从 App Store 下载我的应用程序。

换句话说,我需要找到一种方法让我的应用程序可以通过 App Store 在这些设备上安装:

  1. iPhone 3GS。
  2. iPhone 4。
  3. iPhone 4S。
  4. iPad 2。
  5. 新 iPad。
  6. iPod Touch 第 4 代。

在这些设备上,我的应用程序不应该可用:

  1. iPhone 2G。
  2. iPhone 3G。
  3. 平板电脑。
  4. iPod Touch 3d Gen 和

我的问题是:如何使我的应用程序在 App Store 中可供第一个列表设备的用户使用,而对第二个列表设备的用户不可用?

任何帮助将不胜感激!

PS:我在 SO 上看到过这个问题,但这对我没有多大帮助。

PS2:此应用程序具有所需的可用设备集。

要求:兼容 iPhone 3GS、iPhone 4、iPhone 4S、iPod touch(第 4 代)、iPad 2 Wi-Fi、iPad 2 Wi-Fi + 3G、iPad(第 3 代)和 iPad Wi-Fi + 4G。

有谁知道,他们是怎么做到的?

PS3:同时添加两者still-cameraauto-focus-camera 给我们这个

要求:兼容 iPhone、iPod touch(第 4 代)、iPad 2 Wi-Fi、iPad 2 Wi-Fi + 3G、iPad(第 3 代)和 iPad Wi-Fi + 4G。

只要我们拥有适合我们应用程序的所有 iPhone,而不是 3GS、4 和 4S,这并不是一个好方法。

PS4:我的应用在这里,它有这样的要求:

要求:兼容 iPhone 3GS、iPhone 4 和 iPhone 4S。

4

3 回答 3

8

Word Lens 需要armv7opengles-2video-camera设备功能。

于 2012-05-25T20:45:53.800 回答
5

我不确定你能做到这一点

也许您可以检查您的代码,如果设备型号不是很好,只需弹出一个新视图,说明用户正在使用的型号无法使应用程序工作?

您可以使用以下方法检测模型:

#import <sys/utsname.h>

NSString*
machineName()
{
   struct utsname systemInfo;
uname(&systemInfo);

return [NSString stringWithCString:systemInfo.machine
                          encoding:NSUTF8StringEncoding];
}

并给出:

@"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

否则您可以尝试向苹果发送电子邮件

于 2012-05-16T10:50:49.500 回答
2

我们需要在app 的 plist 部分使用video-camerakey 。Required Device Capabilities

于 2012-12-28T13:16:37.690 回答