代码之家  ›  专栏  ›  技术社区  ›  David Conde

开始电话应用程序开发

  •  4
  • David Conde  · 技术社区  · 14 年前

    我已经开发应用程序很长一段时间了,但现在我想开始开发电话应用程序。主要有四个候选人:

    1. 诺基亚的塞班
    2. 苹果iPhone
    3. 谷歌的安卓
    4. Microsoft Windows移动电话

    考虑到文档、市场、样品和仿真器的可用性,有人能推荐一个吗?我不是百万富翁,所以我不能买它,除非我知道这意味着利润!

    我对语言没有太多的偏好,但是在C语言中呆着是很好的,但是我已经使用汇编程序很长时间了,所以很难吓唬我:)

    7 回复  |  直到 14 年前
        1
  •  12
  •   Unoti    14 年前

    有很多因素需要考虑,比如最大的市场在哪里,等等。但忽略这些因素,只考虑技术和资金问题,明确的答案是从Android开始。

    Android SDK完全免费。iPhoneDev工具需要一个Mac,所以如果你不是Mac用户,你需要买一个Mac。如果你不是一个Mac用户,那么这可能是一个安全的赌注,你还不知道目标C,这是你iPhone需要的。你甚至不需要电话,有一个模拟器工作得很好。我做的东西在模拟器中工作,但在真实的手机上却没有工作或工作方式不同,这是非常罕见的。所以模拟器非常好。

    Android编程是Java语言,与C语言非常类似。

    Android开发比Objective C和iPhone更容易接近和易于开发(至少对于入门来说)。

    有很多在线资源可用,但是“你好,安卓”这本书实际上非常好。不过,它已经过时了,可以追溯到1.5版的SDK,而我们现在的版本是2.2,但是入门的基本原理几乎是相同的。

    你可以选择另一种方式,但在几个小时内,你可以免费在Android上编写你的第一个Hello World程序。即使你决定从另一个平台开始,你也不可能先给安卓一个机会就出错。

    另一件值得注意的事情是,Android比iPhone更容易销售和分发应用程序,这使得它成为一个更好的起点。Android Marketplace没有应用程序审批流程,因此您可以确定是否发布应用程序,而不必考虑是否有能力批准您的第一个应用程序出售或放弃。

    值得一提的是,如果你选择微软的路线,你的C体验几乎会完全转移,你会惊讶于Compact SDK与编写普通的Windows应用程序有多么接近。(至少是在2007年,那是我最后一次写一个微软手机应用程序。)但忘了我提出来的——如果你想成为一个严肃的消费者手机开发者,我建议你至少暂时忘记微软。

        2
  •  4
  •   hotpaw2    14 年前

    如果你的计划是创建和销售付费应用程序,而不仅仅是免费应用程序,不要忘记考虑和评估潜在的收入和现有的竞争,而不仅仅是你的入门开发成本。

    我的本地(不一定具有统计意义)样本显示,有更多的iPhone开发者比Android开发者赚更多的钱。如果你生产的应用程序在许多类别中仅接近前10%的应用程序,那么要赚的钱可能远远超过了摊销开发系统、证书和iOS设备测试的更高初始成本。

    然而,对于iPhone的开发,您可能需要创建一个突出的应用程序,因为应用程序商店中的许多应用程序壁龛已经装满了几十个应用程序。Android商店中潜在竞争应用程序的绝对数量在许多领域都要低得多。你需要在你的专长或兴趣领域评估竞争。

        3
  •  4
  •   Community CDub    8 年前

    首先,你忘了RIM(黑莓的操作系统)。您会发现此图对于分析您的观众很有用(我认为此图仅适用于美国): source of the image

    微软的Phone7将很快通过新设备进入市场,因此很难判断它们将占据多大的市场份额。Windows Phone 7的IDE是免费的,它支持C。

    除了iOS有最广泛的商店和最狂热的粉丝愿意购买这些应用之外,其他的OSS不能说太多,但这些信息只来自我在网上看到的内容和我周围朋友的信息。

    您可能会发现 beginning phone applications development question helibility as well.

    观众(我认为图表仅适用于美国): Source of the image
    RIM- 35% iOS - 28% Android - 9% WinMo - 19%

    微软的Phone7将很快通过新设备进入市场,因此很难判断它们将占据多大的市场份额。他们 IDE for Windows Phone 7 is free 它支持C。

    除了iOS拥有最广泛的商店和狂热的粉丝,他们愿意购买这些应用之外,其他的OSS不能说太多,但这些信息只来自我在网上看到的和我周围朋友看到的。

    你可以找到 beginning-phone-applications-development 问题也有帮助。

        4
  •  3
  •   RickyTheGeek    14 年前

    WindowsPhone7的API将以C_为基础,但其他大部分内容仍然是猜测。

    Android的入门成本最低,基本上是免费的,并且将使用Java(这非常类似于C.*)。

    iPhone有更高的进入成本-你需要拥有一个Mac(或者法律上不太严格,一个被黑客拼凑在一起的OSX安装)。另外,一旦你开发了你的应用程序,成为一个注册的开发者每年要花费99美元,这样你就可以把应用程序放到实际的手机上,然后通过应用程序商店进行销售。你还需要学习Objto-C,它使用的语法与C语言和Java稍有不同。

    另一方面,iPhone的工具非常好,市场也很大,还有一些很好的在线免费课程(包括iTunes上提供的斯坦福课程视频)。

    对诺基亚工具集不太了解,我现在也不会开始为老式的Windows Mobile开发——这是一个死胡同。

        5
  •  2
  •   Nippysaurus    14 年前

    一些想法:

    • 如果你有一台Mac,那么当然可以选择iPhone,因为所有的开发工具都是免费的。
    • 安卓SDK是Eclipse的扩展,可以在几乎任何环境下运行,而且是免费的。
    • Mirosoft对其IDE收费,可能拥有最少的观众。

    我相信你也会发现更多的社区支持iPhone或Android的开发。

        6
  •  1
  •   Matt Lacey    14 年前

    还有跨平台选项,例如 PhoneGap 可能值得你考虑。

        7
  •  1
  •   Mick N    14 年前

    考虑到所有技术因素大致相同,最“有利可图”的平台必须是对您打算开发的特定应用程序拥有最大的未开发消费群的平台。

    有两个因素可以用来评估

    • 市场规模和增长潜力 . 关于这一点,有很多图表和意见文章可以让你进行评估。如果你找不到它们,只需把你列在谷歌提醒中的4个主题放在邮箱里,看一段时间内收到的文章。

    • 应用市场饱和 尤其是在你的应用程序地址所在的市场。你自己的市场调查最好能确定这一点。

    唯一可能适用于特定类型应用程序的其他考虑因素是,应用程序是否需要平台的基本功能,以及各平台是否支持它。例如,在iPhone上制作一个基于Flash的播放器不会有什么进展。