65.9K
CodeProject 正在变化。 阅读更多。
Home

Windows Mobile、iPhone、Android - 市场对比

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.95/5 (178投票s)

2010年1月12日

CPOL

38分钟阅读

viewsIcon

557737

从开发者的角度对 Windows Mobile Marketplace、Apple iPhone AppStore 和 Android Market 进行详细对比。

目录


(点击查看大图)

引言

您即将阅读的这篇文章是我对当前最受欢迎、讨论最多的三个移动平台的思考汇编,这一切都源于“通过移动开发致富”这一范式。

由于我所在的公司正在 Windows Mobile Marketplace、Apple AppStore 和 Android Market 上推出一些产品,我很幸运地花了一些时间研究这三个主要的移动开发平台。因此,我认为我有能力向您介绍这些平台的现状。

说句题外话,我的大部分经验都与 C# 相关。几个月前,我没有任何实际的 Objective-C/Java 经验——我的整个职业生涯都致力于 .NET 和 Visual Studio。我这样说,是想告诉那些只凭个人偏好/对微软的盲目仇恨来评判我所写内容的狂热粉丝。如果您“就是知道”哪个移动平台比其他平台好10倍,并且一直都是最好的——我请您关闭此页面,到别处享受您的无所不能吧。

对于其余的各位,我提前感谢您花时间阅读我的想法,并邀请您发表评论。我猜这本指南对那些与我有着相同 .NET 背景的人最有益,但我会尽量使文本不涉及过多技术细节,以便所有人都能从链接和信息中受益。

请注意——这不是技术文章。这里没有代码!而且,这是一篇非常长的文章,包含了我许多您可能认为不相关的个人想法。由于这篇文章是为了您(而不是反过来)而存在,请随意以最适合您需求的方式使用它。

  • 如果您不想阅读不同移动平台的历史和分析,请跳过“平台概览”部分。
  • 如果您不关心我对不同平台开发工具的看法,请跳过“开发”部分。
  • 如果您已经熟悉不同平台,请跳过“如何开始”部分。
  • 如果您不想阅读关于我个人在每个市场中的漫长而详细的故事,请直接跳到“所有市场的简短描述”。

平台概览

Windows Mobile (WM)

有趣的是,直到2008年底我还在使用 Windows Mobile 2003 手机。如果有人知道微软在移动领域出了什么问题以及为什么会出问题——我知道——因为当时我开发和使用 WM 超过4年。

首先,WM 手机天生就很慢。我提到的那部手机是带有 WM2003 的三星 i750,那东西慢得我大部分时间都说不出话来。现在我有了带有 Windows Mobile 6 的 HTC Touch Diamond 2,它好多了,尽管它也有非常非常慢的时候。

第二个同样非常重要的原因是微软设计移动操作系统的方法。如果不是 HTC (带有 TouchFlow) 和 SPB (带有 Mobile Shell),Windows Mobile 现在将拥有 0% 的市场份额。那些推崇“用手写笔使用设备”范式的人要么是完全脑残,要么从未真正使用过移动设备。这还是出自一个仅仅因为喜欢用手写笔写下想法而购买 Windows Mobile 手机的人(是的,我很奇怪,我知道)。但是,尝试在公共交通工具上用手写笔写短信,或者在电话簿中查找联系人,您就会明白我的意思。在您进行实验之后,开始思考当苹果推出 iPhone 时微软是如何推销这种方式的,您会立刻明白这个雷德蒙德巨头是如何出错的。

关于 Windows Mobile 有趣的一点是,它可能是所有移动平台中最强大的一个。WM 能力的最新例子是这个演示,它展示了 HTC Touch Diamond 2 运行 Android。而这只是冰山一角。当你深入挖掘时,你会发现一些 WM 设备的绝妙功能。举个个人例子——几年前我编写了 WM 手机上的红外接口,制作了一个可以控制电视、空调……实际上任何带有红外传感器的遥控器。后来,当我获得了可以捕捉红外信号的灯光开关时,我甚至用 WM 设备控制了家里的照明。我的意思是,这太棒了:你躺在床上打电话,说再见,然后切换到红外应用,关灯睡觉。或者——你和你的女朋友出去吃饭,她抱怨空调直接吹到你们的桌子;你只需拿出手机关掉它。

此外,您知道苹果吹嘘 AppStore 中有超过 100,000 个应用程序吗?嗯,实际上有 数百万个 WM 应用程序;微软只是从未费心以苹果处理 iPhone 应用程序的方式来组织它们。

WM 的问题在于——微软在这个平台上的“大炮”目前并没有瞄准竞争对手;事实上,它们实际上是在用它自射。如果他们能找到一个有远见和知识的人来领导 WM 部门,并仅仅重组他们拥有的“炮兵”(像 Sinofsky 对 Windows 7 所做的那样)——凭借他们拥有的应用程序、开发工具和 设备阵容——他们将很快把竞争对手打得落花流水。

我只希望他们能在力所能及的时候做到这一点。


(点击查看大图)

iPhone

啊,iPhone!自从我看了这个 2007 年 MacWorld 演示,我就想要一部。我的意思是,看看那个视频——那样使用移动设备简直太对了。忘掉侧面的传统滚动条,轻扫即可滚动。忘掉按下放大和缩小,捏合即可做到

此外,我认为史蒂夫·乔布斯的天才之处在 iPhone 的输入方案上体现得最为清晰。制造商花了数年时间在竖屏模式下缩小键盘,损失了一半可以更有效利用的设备尺寸。微软花费了数十年开发书写识别算法。而最终,史蒂夫只是简单地选择了一个可以用拇指使用的虚拟键盘(顺便说一句,微软在 WM 中有过,现在仍然有——但你需要用手写笔按下按钮,没有人费心去做)。

快进到近三年后的今天——iPhone 引入的一切在如今购买时尚智能手机时几乎都成了标准和预期。用 iTunes 销售应用程序的实验被证明是不可思议的举动,为苹果带来了 巨额现金,并引发了 “AppStore 淘金热”。现在每个人都想涉足移动应用领域,甚至硬件制造商也开始 开设自己的商店

终于有机会玩 iPhone 后,我有点失望。它比我想象的简单得多。操作系统最初不支持复制粘贴清楚地表明了,即使微软多年来在移动领域付出了所有努力,苹果是如何取得领先的。他们只是懒得做那些小而愚蠢或不关键的事情。花一分钟玩玩 PaperToss,你就能准确理解 iPhone 的精髓;它简单、设计精良——而且很酷。你说什么?你想要一个选项来随意移动那个垃圾桶?好吧,你到底为什么要那样做?!


(点击查看大图)

安卓

当我第一次听说谷歌要进入手机开发领域时,我笑得前仰后合。我当时主要的问题是——那有什么意义?我的意思是,说真的,这就像听说街对面的银行要开始卖椒盐卷饼一样。考虑到 谷歌对时尚设计的理解、现有竞争以及在该领域没有经过验证的业绩,我预计他们会惨败。

好吧,我想我错了……而且我想现在很明显他们为什么会加入这场战斗。他们 讨厌微软,就像 微软讨厌他们 一样。 “不作恶”的日子早已过去,谷歌正在开始成熟,我必须说,这与微软成熟的方式几乎相同——进入一个领域,在那里它将开始淘汰可能威胁到它的公司。

我想要给予谷歌的赞誉是,它意识到没有人能在台式机/笔记本电脑领域真正与微软竞争(尤其是在 Windows 7 的营销和新闻宣传效果非常好之后)。因此,他们没有发展 笨拙的极客追随者,也没有打一场试图证明他们的操作系统有多么好(顺便说一句,那个 Chrome OS 项目真的很逊,伙计们)的注定失败的仗,而是进入了最终将取代台式机/笔记本电脑的领域。

这很明显,对吧?一旦您的移动设备具备了不错的电池续航时间(或者“绕过电池,连接电源”模式),能够连接键盘、鼠标和现有显示器(或者将图形输出投射到17英寸大小),就没有哪个理智的人会购买台式机/笔记本电脑用于“日常使用和工作”了。您已经看到人们花所有时间用手机浏览网页、看 YouTube、发推特和互动。只要在编辑 Word 文档或音视频/照片文件时给他们更大的屏幕和更便捷的输入方式,这事就成了。

因此,我们目前正在见证的这场战斗与20年前发生的那场几乎相同——历史以一种有趣的方式重复着自己。微软对 IBM 所做的事情 现在可能被谷歌反施于他们——他们最终可能会从消费领域被推向企业领域,在那里他们将 开始假装从事一些超级棒的项目,同时有效地 从大型咨询交易中窃取金钱

你可以叫我疯子,但如果我处在微软的位置,我会感到害怕。不是那种致命的、阴谋论般的害怕,而是出于一些明显的原因。玩过摩托罗拉 Droid 后,很明显 Android 平台设计得非常好,并且是由一个非常有才华的团队开发的。使用这款设备是非常令人满意的体验;特别是对于那些喜欢物理键盘并因此避开 iPhone 的人来说。而关于 Droid 的整个笑话——语音合成和语音识别,为设备增添了酷炫的元素。我必须说,我非常惊讶地发现,这款手机最糟糕的部分实际上是由一个应该在该领域经验丰富的人(摩托罗拉)开发的硬件——丑陋的边缘、廉价的塑料感、糟糕的屏幕。好吧,之前的 Android 设备 并没有漂亮多少,但现在他们已经 与 HTC 达成了协议,我预计他们将拥有一些真正酷炫的设备。

这也是微软面临的一大问题——HTC 是 WM 硬件的最佳提供商。如果你问我,三星虽然设备稍慢,但却是唯一可行的替代品;所有其他制造商都远远落后……看看惠普这个 “90年代风格”的页面,你就会明白我的意思。

总结一下这篇介绍性文章——我对 Android 平台的质量感到非常惊讶。除了微软方面会发生什么之外,Android 将是任何人的强大对手,它 稳步发展也就不足为奇了。


(点击查看大图)

开发

讨论了所有我们感兴趣的平台背后的历史之后,让我们来谈谈如何为它们进行开发。在本节中,我将提出我对您需要使用的平台、IDE 和模拟器的个人看法。

Windows Mobile

当我说为 Windows Mobile 开发时,我指的是使用 .NET Compact Framework (CF) 进行开发。如果您需要做一些真正疯狂的事情,您总可以使用 C/C++ 进行非托管开发。使用 .NET 路径的好处是,您将更容易地与桌面/服务器世界进行开发和集成(主要使用 Web Services)。此外,Compact Framework 随附的组件(如 SerialPort)将抽象实现细节,为您节省大量时间。如果您在 CF 中找不到所需内容,P/Invoking 始终是一个选择

至于您将使用的工具——Visual Studio 简直是最好的 IDE。将 Eclipse 和 Xcode/Interface Builder 与 Visual Studio 进行比较,就像将2000款梅赛德斯SLK与2009款法拉利599进行比较一样。集成度、速度、智能感知/代码补全、项目组织——Visual Studio 的一切都更好。

WM 开发一个非常糟糕的地方是控件。如果你不花时间融入特殊的风格,并且没有设计的天赋,你的 WM 应用程序会非常丑陋。我很乐意给你看我用 WM 和 iPhone 控件制作的同一个应用——它们真的无法比较。凭借时尚的按钮、漂亮的文本框和内置动画,我的应用在 iPhone 上看起来比在 WM 上漂亮10倍。而有趣的是,我为 WM 开发的经验比为 iPhone 开发的经验多得多(6年对2个月)。

模拟器相当不错。我的意思是,它自2003年就已经存在了,所以任何其他结果都会令人非常惊讶。此外,作为成熟的副作用,您会发现一些非常酷的项目——看看这篇 蓝牙模拟文章。我希望模拟器启动速度能快一点;但那是在我看到 Android 模拟器启动速度有多慢之前。之后我就不再抱怨了。

iPhone

每个人在进行 iPhone 开发时首先注意到的是需要打开 大量窗口(讽刺)才能进行任何有意义的开发。想象一下 Visual Studio 中控制台、构建结果和其他窗格都是独立的,无法停靠,您就会明白我在说什么。这里有两个主要工具——您需要使用 Xcode 编写代码,使用 Interface Builder 设计 GUI。我本来想拿那些花所有时间为 Mac 开发的家伙开玩笑——比如 Xcode 和 Interface Builder 并没有集成,所以它算不上真正的 IDE;比如史蒂夫是“窗口”的秘密粉丝——但微软前段时间推出了 Expression Blend,所以 .NET 开发的未来也大同小异(我们完蛋了)。

在 iPhone 开发中我真正喜欢两件事之一是名为 Instruments 的分析器。在将我的应用程序发送到 AppStore 进行评估之前,我想确保没有内存泄漏,所以我运行了 Instruments。我不仅轻松地获得了在模拟器中运行的交互式会话,并显示了内存使用情况的图表,而且该工具还准确地给出了产生泄漏的代码行!如果您曾经尝试过寻找内存泄漏,您就会知道欣赏苹果工程师所做的工作。干得好,伙计们。

第二是 模拟器,简直太棒了。只有在开发 iPhone 时,我才更喜欢使用模拟器而不是实际设备,因为一切都更好更快。

iPhone 开发中的缺点可能与个人偏好有关,我猜。但对我来说,Objective-C 是个问题;不是因为它“难”,而是因为它“不同”。它显然是混合型的,缺乏 C# 的优雅和美感……如果你认为我在这里有偏见,不妨看看 Objective-C 中 这个数组初始化代码。是的,你确实需要输入所有这些,包括 alloc 和 dealloc。不,你不能像处理事件取消订阅一样处理 dealloc (-= 不管用)——当检测到内存问题时,操作系统会直接杀死你的应用程序。

这让我想到另一个缺点——即使您有 Mac 用于开发,有 iPhone 用于玩,您也很可能甚至无法达到设备上“OS 杀死您的应用程序”的阶段。您不仅需要注册才能访问 iPhone 开发者中心的内容和 SDK 下载链接(这是对苹果受控狂人本质的致敬),还需要输入信用卡信息并每年支付99美元(苹果会向您发放过期的预置配置文件),才能在您购买的设备上部署您制作的应用程序。我的意思是,说真的,伙计们……这不公平。

对于所有抱怨“Visual Studio 不是免费的,Visual Studio 不是免费的!”的人——这里有一个直接、无障碍的链接,无需提问,90天试用,随便用,然后重新安装,Visual Studio 2008 Professional 试用版,它可以让您尽情玩转您的 WM 设备。

[编辑:微软 BizSpark 团队的 Kenik Hassel 联系我,指出移动开发者可能对 他们的服务 感兴趣。基本上,如果您每年的收入低于100万美元,您就有资格在未来3年内免费获得微软大部分开发工具和操作系统(如果您在3年后退出该计划,则需支付100美元的费用)。] 

[编辑:另外,请务必查看 Joel Ivory Johnson 的这篇文章,了解以大幅折扣获取 Visual Studio 的其他方式]

安卓

与 Windows Mobile 一样,开发方面有两种方法。主流方法,也就是我将要讨论的方法,包括 Java 和标准 SDK。由于 Android 是基于 Linux 构建的,您可以使用一些技巧来运行 C/C++ 代码,或者自 1.5 版本以来,使用 NDK

可以使用其他IDE进行开发,但Eclipse是推荐的。几年前我第一次看到它时,Eclipse简直是可悲的,我总是替那些使用Java开发并维护它的人感到遗憾。现在,它已经可以接受,并且拥有一些我希望Visual Studio原生支持的选项(主要与代码导航有关)。Eclipse最糟糕的两件事是代码补全/智能感知和项目组织,也就是工作区。我之前在谈论WM手写笔背后的天才时,用过“脑残”这个词……而工作区背后的那个人一定是他的双胞胎兄弟。如果有人能解释为什么会有人想把不相关的项目、键盘快捷键和Android SDK的路径位置捆绑到一起(工作区实际上代表了项目和IDE设置的集合),并使其“依赖于文件系统位置”——请发表评论并帮助我。

对于 .NET 开发人员来说,圣杯就是尝试 “让 Eclipse 像 Visual Studio 一样”。我没有尝试过遵循这条路(正如他们所说——入乡随俗),但您可以随意点击链接并尝试您的运气。

Android 模拟器还行。除了启动慢之外——它能用,与 IDE 集成良好,调试器大多数时候都能连接——您 不能要求更多了。不过,如果您创建了非标准模拟器屏幕分辨率的镜像,您可能会遇到屏幕上没有某些按键(例如解锁菜单)的问题,因此请务必利用 这些键盘快捷键

如何开始

现在您已经了解了所有平台的状态和将要使用的工具,您是否迫不及待地想开始呢?那么,我们开始吧……

Windows Mobile

讽刺的是,我可能不是最适合问“如何开始”的人,因为我从 2004 年 Imagine Cup(只有我 2005 年参赛作品的视频)就开始从事 Windows Mobile 开发了。如果您懂 C#,那么您几乎肯定会走我走过的路——您会先做业余项目,然后是实际项目……最终掌握 .NET Compact Framework 的具体细节。

如果你不懂 C#——学习它应该不会太难,而且这可能是你近期最好的投资。一旦你懂了 C#,你几乎可以编写所有东西——从移动设备,到 ASP.NET 页面,Silverlight 前端,WebService 和 WCF 后端……当然,.NET 平台的不同部分会有细微的差别,但你将迈出的步伐远小于从 C# 切换到 Java,例如。查看 这个话题 以获取更多信息。

WM 开发的一个大问题是,当你遇到麻烦时,没有一个“微软的地方”可以去提问。当然——有 MSDN智能设备开发论坛,但90%以上的时间你最终会找到一些 无用的博客,或者得到一些更 旨在让作者在最佳回答者榜单上攀升 而非帮助你的笼统回答。[编辑:在搜索 MSDN 和发帖到论坛后,如果您符合条件,可以尝试微软技术支持,正如 Raffaele Limosani 在他的评论中指出]

我最近读的两本能帮助你解决深奥问题的书是 Microsoft Mobile Development HandbookProfessional Microsoft Smartphone Programming

您想要开始的链接是 – http://msdn.microsoft.com/en-us/windowsmobile/bb250560.aspx。我实际上很惊讶能在 MSDN 上找到如此简洁的页面。如果您在浏览这些步骤和链接时遇到任何问题,请发表评论,我将尽力帮助您。

iPhone

开始学习 iPhone 平台真的很容易——你只需要购买 Beginning iPhone 3 Development: Exploring the iPhone SDK 这本书。它是一本能清晰解释问题和解决方案的书,会引导你完成开发测试应用程序的过程,然后神奇地为你解答你在编写代码时遇到的所有问题。它还会帮你设置环境,告诉你如何加入苹果开发者计划,最后还会给你提供一系列很棒的链接,让你能深入学习特定主题。我只能为作者 Dave MarkJeff LaMarche 鼓掌。

iPhone 开发者中心 很好。它干净、设计精良,主页上有关联内容的链接。我之前提到过为了访问内容而注册以及为了部署到设备而付费的麻烦……幸运的是——文档是免费的!当然,并非所有教育内容都是免费的,当我看到这些时,我很高兴自己 主要是一个 .NET 开发者

当您获得 iPhone 开发者计划门户 的访问权限时,请务必观看关于设置团队、证书、设备和配置文件的操作视频。它们将为您节省大量时间,并教您所有关于部署到设备和最终部署到 AppStore 所需的知识。

您想要开始的链接是 – Beginning iPhone 3 Development: Exploring the iPhone SDK。如果您不想购买这本书,可以直接从 iPhone 开发者中心 和那里的 iPhone SDK (3.1.2) 链接开始。

安卓

这是我唯一一个通过直接阅读官方网站上的 开发指南 来学习的平台。这正是对其内容组织得多么好的肯定——它让我想起了 MSDN 在“2003 版”的黄金时代,在他们决定制作 雅虎式灾难主页 之前。如果你像我一样,你也会喜欢 Androidology 三部曲视频,它将给你一个甜美的平台概览。

一个寻求帮助的好地方是——你绝对猜不到——irc.freenode.com 上的 #android(和 #android-dev)IRC 频道。我想借此机会感谢所有常驻在那里的伙计们,他们花时间帮助像我这样的 Android 小白。我希望所有编程主题都有更多这样的地方,因为与“知道”的人聊上2分钟可以节省你数小时不必要的努力。[编辑:Freenode 似乎现在要求用户先用电子邮件地址注册才能在频道中公开发言,这使得这种寻找答案的方式帮助不大]

到目前为止,我看的 Android 书籍并没有让我感到惊喜。我读过最好的是 Pro Android Games,但这只是因为我对游戏开发非常感兴趣,而且作者采用了务实的方法,提供了大量的代码和示例。大多数人推荐的更“通用主题”的书是 Professional Android Application Development

您想要开始的链接是 - https://developer.android.com.cn/intl/de/sdk/index.html。您会看到一份非常好的步骤列表,可以帮助您运行 Hello World 应用程序。再次感谢 Google 团队的文档。

市场

这大概是你们 most 感兴趣的话题了。那些关于开发者 每天赚2万美元的故事是真的吗审核过程真的那么糟糕吗?让我们剖析各个市场,答案就会显现出来。

Windows Mobile

Windows Mobile Marketplace 于2009年10月带着大量宣传和高期望推出。三个月后,除了成功之外,你可以称它为任何东西。在许多方面,Marketplace 是一个典型的全面失败的例子,应用程序少于1000个,审核过程痛苦不堪,并且支持论坛上有一堆 “求助”主题。Marketplace 被 Windows 6.5 发布所仓促推出这一明显事实并不是最糟糕的,糟糕的是少数微软员工偶尔访问论坛时的 谎言和傲慢

Marketplace 最大的问题是,无论你做什么,都需要做得完美。当你输入任何数据——公司详情、应用程序描述——你需要百分之百确定它是百分之百正确的,因为你只有那一次机会。点击提交按钮后,就认为是不可逆转的。你在此期间更改了公司电话号码?好吧,见鬼去吧……你无法更改。想更新应用程序描述?那就走提交新版本的流程,附带新的 cab 文件,等上一个月,然后接受你将失去所有积极评论和排名的事实。

所以,无论出现什么问题——你实际上都需要接受它会一直存在。并且不要抱有会得到支持的虚假希望;你唯一能得到的是他们两周后的“感谢你的反馈,我们正在努力解决,但目前你提出的要求是不可能实现”的回复。

那么,如果我告诉你,为了获得这种体验,你需要每年支付100美元,每次应用程序提交100美元,每个市场10美元,你会感到惊讶吗?是的?好吧,这位老兄也感到惊讶。但这还不是最有趣的部分。如果你有移动市场的经验,阅读一下关于“为什么你们的认证费用比竞争对手高这么多?”这个问题的回答,然后笑一笑吧。

我们将进行严格的认证过程,以确保最佳的最终用户体验,并确保设备和网络资源不会被恶意使用。这个认证过程承担着巨大的成本。我们相信,我们为开发者提供的补贴认证费是可接受的经营成本,以便获得数百万对购买应用程序感兴趣的客户。

Marketplace 中确实有应用程序的原因是,一旦您支付了每年100美元的注册费,您将获得“免费提交额度”(5个)。我曾读到微软计划将这些额度作为激励措施发放至2009年底,但如果他们现在决定撤回这些额度,并强制 ISV 为每次新提交支付100美元,我将会感到震惊;仅仅因为在 Windows Mobile Marketplace 上赚大钱几乎是不可能的——即使一年后,您也无法确定能否收回那200美元(提交费+注册费)。

另请注意,如果您的应用程序被拒绝,您将被扣除一个提交额度。为了让您准确了解提交过程可能会如何进行,我将分享我提交应用程序的经验。您需要原谅我的是确切的日期,因为 Windows Mobile Marketplace 管理中没有办法查看历史记录。我将尝试从我拥有的电子邮件中重构流程。

  • 2009年10月13日——填写所有字段,准备好 CAB、截图和所有其他东西;点击提交按钮。
  • 2009年10月26日——收到微软的回复,应用程序被拒绝,因为无法显示中文字符,并且某个功能失败。任何为 WM 开发过的人都知道,第一个问题是由一个对平台一无所知的人报告的(只需阅读此内容)。第二个问题是我这个白痴在清理服务器时删除了所需的 DLL 造成的。扣除1个价值100美元的提交额度。
  • 2009年10月26日——将DLL复制回服务器,并解释了特殊字符的问题。重新提交应用程序。
  • 2009年11月2日——再次被拒绝。这次是因为我的应用程序没有请求用户允许使用互联网连接,并且在他们的自动化测试中,应用程序关闭时间超过3秒。好吧,我有罪。
    对于第一点——我遗漏了 应用程序提交指南 第12页 5.3 部分下的文本。
    至于第二点——默认情况下,我允许应用程序存储9999个项目,并且历史记录保存发生在用户退出应用程序之前。
    当然,他们可以在第一次拒绝后就指出互联网连接问题,并且不提你进行9999次操作后应用程序需要4秒才能关闭的事实(我测试过),但是——好吧,我有罪。扣除1个价值100美元的提交额度。
  • 2009年11月5日——觉得默认将用户限制在100次操作很愚蠢,所以我重构了历史记录的保存方式,使其在用户进行任何操作时立即发生,并在首次尝试时添加了“请允许互联网连接”的逻辑。重新提交应用程序。
  • 2009年11月19日——应用程序终于在 Marketplace 上线。扣除一个价值100美元的提交额度。

如您所见,我花了超过一个月的时间,并支付了300美元的额度(加上100美元的注册费),才在 Marketplace 上发布了我的第一个付费应用程序。值得吗?嗯,让我给您一些硬数据——从2009年11月19日到2010年1月7日(我写这篇文章的日期),它赚了823.35美元。微软从中抽取30%作为其“基础设施”和“支持”费用,所以在扣除税费之前,该应用程序在大约两个月内赚了576.34美元。如果您渴望了解更多关于“Marketplace 应用程序能赚多少钱”的信息,请查看这个主题

你问免费应用怎么样?它们下载量大吗?我提交的4星级应用在三个月内获得了超过10000次下载(我不会赘述其提交历史的细节;与我之前写的没有显著不同)。就它在列表中的位置(它属于某个类别中的热门应用)而言,我会说这并不算好……这只是表明“我们很高兴能将 Marketplace 的优势带给更多人,并为 Windows 手机开发者提供触达全球3000万台设备的机会”完全是营销废话。

结论?Windows Mobile Marketplace 简直糟糕透顶。我能想到的唯一积极的事情是它不拥挤,而且现在上线的那些真正优秀的应用程序将有更好的机会在 Marketplace 达到预期时(如果能达到的话)最终获得丰厚利润。其他一切,从支持到基础设施和曝光度,正如我所说,都糟糕透顶(我真的觉得有必要重复这一点)。

目前,您最好还是尝试通过 三星应用商店类似商店(这些商店已经开了很多年)来从您的 WM 应用中赚钱。这确实很可惜,因为我预计微软最终会做好。白白获得30%的份额,他们不这样做就是傻瓜,因为通过操作系统捆绑销售应用程序的模式被证明是非常有利可图的。我的意思是,从这个角度来看,与 Windows Mobile 没有严格关联,微软没有像 iTunes 那样捆绑在 Windows 中销售音乐、视频以及桌面和移动应用程序,是不是很奇怪?

iPhone

首先,我想感谢 Joe Hewitt 因为 AppStore 政策而退出 iPhone 开发。当像他这样备受瞩目的开发者决定为明显的不公发声,尤其是在投入心血克服障碍并 努力让事情成功 之后,这意义重大。所以,代表所有被 AppStore 审查员每次提交辛勤工作时推来搡去的无名小卒——谢谢你,伙计。

上一段是您能得到的关于 AppStore 最原始、最好的介绍。如果您想进行比较——这就像去一个大城市最繁忙的夜总会。您还没进去,就能看到那里人头攒动,有傲慢的保安把守,前面排着长长的队伍。就在轮到您被搜身之前,您已经准备好接受尴尬或被“鞋子不合适”而拒之门外。而“鞋子不合适”正是我第一次向 AppStore 提交应用程序时发生的事情。

  • 2009年11月19日——考虑到这是我的第一个 iPhone 项目,我预计会因为内存泄漏或类似原因被拒绝。我花了很多时间重构代码,确保一切正常运行并寻找内存泄漏。当我最终达到“它已经尽可能好了”的状态时,我将整个东西压缩并提交了。
  • 2009年11月25日——应用被拒。好吧,我预料到了。令人惊讶的是原因——他们不喜欢它引用了完整版中可用的东西。技术上来说,同样的东西通过了 Windows Marketplace 的审查员;但对这些人来说不行——他们发来了截图,实际意思是——把这部分拿掉。于是,我照做了。
  • 2009年11月30日——感恩节后,我打包了新版本,准备再次被拒。好吧,至少每次尝试不需要花100美元……
  • 2009年12月4日——收到应用程序正在审核的通知。
  • 2009年12月9日——经过5天的忐忑等待,收到通知,应用程序已准备好发布。

回想起来,我遇到的麻烦比我预期的要少得多。AppStore 的反馈更快,我想我部分是因为这个过程比 Windows Marketplace 结束得更快而感到眼花缭乱。此外,也没有每次尝试100美元的压力。如果您想阅读更令人毛骨悚然的提交故事,请阅读此文

然而,我很快就失望地发现应用程序表现不佳。这方面也和前面提到的夜总会一样——一旦你进去,就会发现只有少数人真正乐在其中。其他人大多只是在那里消磨时间,试图假装玩得很开心。所以,硬数据是——Windows Marketplace 上一款拥有超过10000次下载的4星级免费应用程序,其更加精美和漂亮的移植版在上个月只获得了500多次下载。而且我几乎看不到数字,因为 iTunes Connect 上的统计数据设计得非常糟糕。[编辑:Robert Paulson 在我文章的 评论中 推荐了(付费工具)APPlyzer,以更好地了解您的应用程序的表现]

底线是——如果你从未用C/Objective-C开发过——就别再关注那些炒作了,你几乎没有机会复制现有的白手起家致富的故事(这些故事无疑是真的)。那里人太多了,你需要花费太多时间才能将你的技能提升到一定水平,而且大多数好点子都已经被尝试过了——包括 “假装自己是可爱的萌妹子开发者,喜欢玩球”。如果你真的擅长C/Objective-C,并且还没有响应史蒂夫的号召——你还需要设计天赋、绝妙的创意和精巧的实现,才能开发出值得推广并脱颖而出的东西,尤其是现在 大公司们正在摩拳擦掌 准备接管整个市场。

安卓

Android Market 的历史,令人惊讶的是,与 Windows Marketplace 的历史几乎相同;唯一的区别是它早一年推出——在2008年10月。开发者们遇到了许多问题,到2009年3月,它只容纳了大约2000个应用程序。如今,对于搜索巨头来说情况好多了,而对于新来者来说情况却更糟——如果你启动你的 Android 设备并点击 Market 图标,你会发现那里有超过20000个应用程序。

然而,我必须说,Android Market 上的应用程序质量相当低。在我下载的一堆应用中,我喜欢的可能只有4、5个;其中一个,当然是 臭名昭著的 AbductionPhil干得好)。所以,我认为这个市场可能是目前新移动开发者的最佳选择。20000个应用意味着人潮拥挤,但如果你手头有一个新的 Trism视频),我预计你会做得很好。

在您开始编码之前,需要注意的是——Android Market 上的用户似乎比 AppStore 甚至 Windows Marketplace 上的用户“更便宜”。这既来自我个人经验(10天内只售出2份,是 Windows Marketplace 上描述的同一付费应用程序的移植版),也来自 其他人的经验——如果您点击了我之前给出的链接,您会看到 Abduction,这可能是最著名的 Android 游戏,到2009年10月只有10000次付费下载(开发者每次下载赚取约1美元)。

来自 StackOverflow 帖子 的建议是,在 Android Market 上,您应该选择由广告支持的免费应用程序。一个下载量超过2万的应用程序每天能从广告中获得50美元的收入,这看起来非常合理,我将是第一个尝试这种模式,而不是失败的销售应用程序模式。

与 Windows Marketplace 不同,我的大部分文字都与提交过程有关,在这里我没有什么可报告的。你支付25美元(请注意这是一次性费用),如果你想拥有付费应用程序,还需要额外支付20美元给 Google Checkout 账户,然后上传你的 .apk 文件和截图——就这样。

你无法想象,在经历过 Windows Marketplace 和 Apple AppStore 之后,当我点击提交按钮,看到我的应用程序旁边显示“已发布”时,我有多么惊讶。10分钟内我都不敢相信应用程序已经上线了,于是我用两部不同的手机进行了检查以确保。仅仅因为这一点,Android Market 就赢得了我的同情,我相信他们所采取的举动将极大地影响我们目前正在见证的市场之战。

所有市场的简短对比

Windows Mobile

  • 注册费:每年100美元
  • 应用程序提交费:每个应用程序100美元(首次注册免费提交5个)
  • 额外市场提交费:每个应用程序10美元
  • 审核流程:大约2周
  • 微软抽成:销售额的30%
  • 应用程序数量:约1,000个
  • 链接
  • 有趣的事实
    • 如果用户未登录或未在其账户设置页面填写付款信息,他们将无法在官方 Marketplace 网站上看到购买/安装按钮。网站上没有任何可见的提示告诉他们需要做这些。
    • 使用 HTC Touch Diamond 2(可能还有许多其他设备)直接从 Marketplace 输入正确的信用卡支付信息并购买应用程序是不可能的。接受地址的表单有一个双重滚动 bug,阻止用户从 ComboBox 中选择州——当选择州时,表单会滚动(而不是选择州)。

iPhone

Android

结论

显然,这种模式,即Marketplace直接作为操作系统的一部分出现在设备上,将继续存在。对我们开发者来说——一方面,这是个好消息——小型软件供应商不必处理获取和维护分销渠道或销售队伍的问题。另一方面,有两件事让我非常担心——Marketplace 提供商收取的高额分成和审核过程。我担心软件开发的未来,其中操作系统提供商直接决定什么可以部署在其平台上,同时从每一笔销售中抽取巨额分成。

那么,我押注哪个操作系统将运行最终取代我们用于“日常工作和娱乐”的笔记本电脑/台式机的设备,以及我建议您在哪里寻找机会呢?令人惊讶的是,我必须说是——Android。

我之所以没有说“全力以赴”,是因为我还没有看到微软在这场战斗中亮出他们的“重磅武器”。给我6个月的时间,看看他们能否在90年代互联网时代,由比尔·盖茨掌舵时,成功复制那次转变,而 现在鲍尔默掌权;然后我才能给出我的全面预测。目前,我并不乐观。我的意思是,看着他们真是令人沮丧——拥有如此多 有才华的人 在他们的名册上或 可供雇佣,拥有出色的技术和设备阵容,我们仍然在目睹高管们不断 胡言乱语 而浪费时间和金钱。

苹果呢?说实话,我不会太担心他们。他们会一直做得很好,但在最好的情况下,他们一如既往地会排在第二位。为什么?因为一种我(我想,以及所有其他以自我为中心的人)都很熟悉独特才能——因为那种 “凡事我说了算” 的态度。当然,你对所有事情都了如指掌,并且已经证明了这一点。但你不能跑去惠普说——你们的设备和我们的比起来就是垃圾!即使你在技术上是对的,惠普的设备和你的比起来确实很糟糕……但他们却因为某种奇怪的命运,仍然比你更强大。而你需要惠普,也需要戴尔、华硕以及所有其他和你比起来很糟糕的公司,原因很简单——你不能 事事亲力亲为,而且人们 永远不会接受单一标准,即使它是最好的标准。

而且,我们也看到了没有史蒂夫·乔布斯的苹果是什么样子。我不能也不会预测他将领导公司多久,原因众所周知;我能说和想说的只是,我希望在未来许多年里都能看到他那傲慢的面孔,因为他确实是一个 让人容易憎恨但又难以不爱 的人物(直接跳到7:10)。求知若饥,虚心若愚,史蒂夫

谷歌让我害怕。Gmail、Google Docs、地图、YouTube 和 Chrome 与 Android 之间的联系——它太完美了,不可能是偶然的。而且大多数时候,公司甚至还没有意识到他们在对抗谷歌,就发现 游戏已经结束了。按照我谈论 Android 开发时给出的链接,玩一下这个平台。之后,我确信您会对我预测微软最终可能会将操作系统领域输给谷歌的预测感到不那么惊讶。


(点击查看大图)

与我所有的文章一样,我真诚地感谢任何诚实的反馈。如果您提出一些事实/想法,我将很乐意讨论它们,特别是考虑到我正在治疗我那种苹果式的“凡事我说了算”的态度。;)

再次感谢您的阅读!

历史

  • 2010年1月15日——根据文章评论添加了一些链接。
  • 2010年1月12日——文章初版。
© . All rights reserved.