我应该在我的应用程序中使用iOS 4新功能吗?为什么? [英] Should i use iOS 4 new features in my app? and why?

查看:58
本文介绍了我应该在我的应用程序中使用iOS 4新功能吗?为什么?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在更新我的一个应用程序而且我陷入两难境地:

I am updating one of my apps and I have a dilemma:

在我想添加iOS 4独特功能的地方我别无选择,只能实现它们对于受支持的设备 - 这里没有困境。

In places I wanted to add iOS 4 unique features I had no choice but to implement them only for supported devices - no dilemma here.

困境是我有两种方法可以达到同样的效果,一种是老方式,一种是新方式办法。
一个很好的例子就是使用块来制作动画,我可以使用这种语法:

The dilemma is when I have 2 ways to achieve the same effect, one in the "old way" and one in a "new way". A good example is using blocks for animation, I can use this syntax:

[UIView animateWithDuration:2 animations:^{
     self.segmentedControl.alpha=0;
 }];

仅在iOS 4.0中受支持。或者使用所有版本都支持的旧方式,包括4.(还有许多其他类似的例子。)

that will be supported in iOS 4.0 only. or use the old way which will be supported in all versions including 4. (There are many other similar examples.)

你做什么以及为什么?

这些块非常棒,但如果我想支持以前的版本,我将不得不编写更多代码?在这种情况下使用它们可以获得什么?

The blocks are really great but I will have to write more code if I want to support previous versions? What do I earn from using them in that situation?

推荐答案

通常,规则是支持最低版本的操作系统提供使您能够交付所需产品的功能。我推出了大约一个月后,我的所有应用程序都需要iPhone OS 3.0,因为我需要支持自定义复制和粘贴,以及应用程序内电子邮件。对于我的一个应用程序的免费版本,我想尝试iAds,所以我只做了4.0。

Generally, the rule is to support the lowest version of the OS that provides the capabilities that enable you to deliver the product you want to. I made all of my applications require iPhone OS 3.0 about a month after that launched because I needed to support custom copy and paste, as well as in-application email. For the free version of one of my applications, I wanted to try out iAds, so I made that 4.0-only.

内部代码改进的可能性由一个新的操作系统制定规则有点棘手。正如乔所指出的那样,你花费时间与旧的做事方式进行斗争,可以通过转移到新的操作系统版本来节省时间,是时候你不修复错误或添加下一个伟大的新功能。在某些时候,一种新的做事方式(如块和GCD)的优雅过于引人注目,即使它可能不会直接为您的应用程序添加任何新功能。

The possibilities for internal code improvements that are provided by a new OS are a little trickier to make rules about. As Joe points out, the time you spend struggling against an old way of doing things, that could be saved by moving to a new OS version, is time that you aren't fixing bugs or adding that next great new feature. At some point, the elegance of a new way of doing things (like blocks and GCD) is just too compelling to ignore, even though it may not directly add any new features to your application.

在Mac上,许多开发人员都支持当前版本的操作系统以及Apple发布的前一版本(Snow Leopard和Leopard,目前)。只有当新的操作系统问世时,他们才会放弃对以前的落后版本的支持。像威尔·希普利(Wil Shipley)这样的其他人则主张立即专注于新操作系统并忽略旧版本。这里的论点是那些不支付Apple新操作系统版本或者不保持系统更新的人购买第三方应用程序的可能性要小得多。

On the Mac, many developers maintain support for the current version of the OS plus the previous one released by Apple (Snow Leopard and Leopard, at this time). Only when a new OS comes out do they drop support for the previously one-behind version. Others, like Wil Shipley, advocate jumping on board the new OS exclusively right away and ignoring old versions. The argument here is that people who won't pay for Apple's new OS versions or who don't keep their systems up to date are much less likely to buy your third-party application.

我在iOS上也看到了这一点。例如,我针对3.0版本的推出针对不同版本进行了广告测试(当iPod touch用户仍需为其操作系统更新付费时)。虽然我的应用程序的免费版本下载在2.x与3.x用户之间相对一致,但3.x用户几乎没有2.x用户支付该应用程序。

I've seen this as well on iOS. For example, I ran a test of ads targeted to different versions around the launch of 3.0 (when iPod touch users still had to pay for their OS updates). While downloads of a free version of my application were relatively consistent between 2.x vs 3.x users, almost no 2.x users paid for the application while 3.x users did.

没有人在我的付费用户中抱怨早期转向3.0(他们确实很好地谈论了新功能)并且只有两个人抱怨我的免费版本只有4.0版本,相比之下已经升级了56,000个版本没问题。虽然我会花一点时间来过渡期,但我相信在它们推出后不久就会转向新的操作系统版本。现在,我正在制作我的4.0版本的所有内容,以便我可以使代码库现代化。

No one complained among my paying users about the early move to 3.0 (they did speak well about the new features, though) and only two people have complained about my free version going 4.0-only, compared to 56,000 that have upgraded without a problem. While I would give a little time for a transition period, I believe in moving to new OS versions relatively soon after they launch. Right now, I'm in the process of making everything of mine 4.0-only so that I can modernize the codebase.

最后,您可以从中获得最后一项好处新的操作系统版本使您对Apple更具吸引力,因为Apple总是希望使用新设备和操作系统版本中的新功能来推广应用程序。

Finally, one last benefit you get from going with the new OS version is that you become much more attractive to Apple, who always wants to promote applications using new features in their new devices and OS versions.

这篇关于我应该在我的应用程序中使用iOS 4新功能吗?为什么?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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