支持传统的iPhone用户 [英] Support legacy iPhone users

查看:82
本文介绍了支持传统的iPhone用户的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

现在可以下载iPhone SDK 4.0,很快就会有消费者可以使用iOS 4.0,开始使用4.0操作系统中的新功能是否有意义?

Now that iPhone SDK 4.0 is available for download, and iOS 4.0 will be available for consumers shortly, does it make sense to start using the new features available in the 4.0 OS?

我主要担心的是,使用4.0功能要求最终用户也将他们的手机/ iPod更新为4.0。虽然这个过程非常简单,但大多数用户更新是否合理?应用程序本身并不需要在新操作系统中引入任何内容,但现在劝阻了一些传统动画技术以支持基于块的对应方。这对我来说很好,我更喜欢使用块方法,但我担心这对最终用户来说是个麻烦。

My primary concern is that using the 4.0 features mandates that end users also update their phones/ipods to 4.0. While this process is pretty painless, is it a reasonable expect most users to update? The application itself doesn't really need anything introduced in the new OS but some of the traditional animation techniques are now "discouraged" in favor of their block-based counterparts. This is fine for me, I'd prefer to use block methods, but I'm concerned that this is a hassle for end users.

那么这方面的一般经验是什么?您是否能够获得最新最好的产品或坚持使用当前版本?

So what's the general experience on this? Do you plunge ahead with the latest and greatest or stick with the current version?

p.s。这假设 GM 在最终用户可用时安装操作系统 - 而不是测试版。

p.s. This assumes GM installs of the OS on end users when it is available - not beta.

推荐答案

这取决于。您有至少3个选项,最好的方式取决于您的应用程序的要求:

It depends. You have at least 3 options and the best way to go depends on your app's requirements:


  1. 您的应用程序没有' t 需要任何iOS 4.0 API - 您应该使用BaseSDK 4.0进行构建,但是将Target Deployment设置为您必须拥有的最低版本(即:3.0)。

    优点:(1)您的应用程序可在至少具有Target Deployment版本的任何设备上运行,(2)它将支持在具有iOS 4.0的设备上进行快速App切换。
    缺点:在目标部署版本之后,您无法使用任何API。

  1. Your app doesn't require any iOS 4.0 APIs - you should build with BaseSDK 4.0, but set Target Deployment to the minimum version you must have (ie: 3.0).
    Advantages: (1) Your app to run on any device that has at least that Target Deployment version and (2) it will support fast App switching on devices that have iOS 4.0. Disadvantages: You can't use any APIs from after your Target Deployment version.

您的应用使用4.0 API会更好但没有它们仍然可以使用 - 如果您可以通过在iOS 4.0之前的设备上提供减少的功能或通过在4.0之前使用不同的API时提供类似的功能来有条件地使用4.0 API设备,然后您可以使用BaseSDK 4.0进行构建,将Target Deployment设置为您必须具有的最低版本(即:3.0)并有条件地使用iOS 4.0 API调用。
优点:您可以在至少拥有最低iOS版本的所有设备上运行。 缺点:所有这些条件调用都会变得复杂。

Your app would be better with 4.0 APIs but it would still be usable without them - if you can conditionally use 4.0 APIs either by providing reduced functionality when on pre iOS 4.0 devices or by providing similar functionality while using different APIs when on pre 4.0 devices, then you can build with BaseSDK 4.0, set Target Deployment to to the minimum version you must have (ie: 3.0) and conditionally use the iOS 4.0 API calls. Advantages: you can run on all devices that have at least your minimum iOS version. Disadvantages: all those conditional calls can get complicated.

您的应用需要某些iOS 4.0 API以便运行 - 在这里您别无选择。使用BaseSDK 4.0构建,设置Target Deployment 4.0并使用这些4.0 API。

优势:代码更简单,iOS版本没有条件
缺点:你的应用程序还不能在iPad上运行(它们在2010年秋季中获得4.0),你的应用程序将永远不会在早于3G的iPhone上运行(它们不会获得4.0)并且某些iOS 4.0功能将无法运行在iPhone 3G上。

Your app requires some iOS 4.0 APIs in order to function - Here you have no choice. Build with BaseSDK 4.0, set Target Deployment 4.0 and use those 4.0 APIs.
Advantage: code is simpler, no conditionals for iOS version Disadvantages: Your app won't run on iPads yet (they get 4.0 in "Fall 2010"), your app will never run on iPhones earlier than 3G (they don't get 4.0) and some iOS 4.0 features won't work on iPhone 3G.

在所有情况下,您的Base SDK将为4.0,您的目标部署将是您的最低限度 require ,如果您需要更新的API,您可以在设备拥有它时有条件地使用它。

In all cases, your Base SDK will be 4.0, your Target Deployment will the minimum that you require, and if you need a newer API you can conditionally use it if the device has it.

只需使用BaseSDK 4.0进行编译,即使您不使用任何4.0功能,也可以在4.0设备上快速切换应用程序。所有应用程序至少应该这样做,即使他们的目标是iOS 2.0。如果您不需要,请不要使用4.0功能,并且可以定位更广泛的旧设备和尚未升级的设备。

Just by compiling with BaseSDK 4.0 you will get fast app switching on 4.0 devices even if you don't use any 4.0 features. All apps should at least do that even if they target iOS 2.0. Don't use the 4.0 features if you don't need them and you can target a broader range of older devices and devices that haven't upgraded.

关于SO的最新答案总结了如何进行此设置用于BaseSDK和目标部署以及如何有条件地使用API​​来定位多个固件版本。

This recent answer on SO summarizes how to do this setup for BaseSDK and Target Deployment and how to conditionally use APIs to target multiple firmware versions.

这篇关于支持传统的iPhone用户的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆