Android开发是否像iPhone一样受到限制?

Android开发是否像iPhone一样受到限制?或者你可以下载任何你想要的东西?

我想了解iPhone或Android的开发情况,但从我听到的iPhone开发是相当严格的!

不! 这是Android的美丽。 即使有一个相同的AppStore,你可以从任何地方下载一个应用程序。 另外,它是用Java编程的,所以你不必担心像垃圾回收这样的平凡东西(只是为了提高速度)。

不要吝啬iPhone。 这也是一个很棒的平台。


编辑:很多人一直注意到,iPhone的API不是限制性的,而是审批过程。 这是真的,但是iPhone的API仍然有一些限制,比如硬件访问水平低,背景(只有3.0版本的通知)等等。

iPhone 3.0是朝着正确的方向迈出的一步,但还有一些工作要做。

另外,你有没有考虑制作JB iPhone软件? 我不确定这是市场份额,但我知道很多使用越狱设备的人。


编辑:我已经阅读了一些类似的问题,Android的Java可以放慢东西由于垃圾收集器的更多职位。 只是要注意的东西。

在这两个平台的相对限制性方面,有很多方面需要考虑。

市场

在提交过程中,Android Market无疑比App Store限制更less。 好处是您可以在Android Market中获得您想要的任何内容。 不足之处在于,您可以在Android Market中获得几乎所有您想要的内容( 垃圾邮件“应用程序”在某种程度上是一个限制)。

iPhone的一个很大的负面影响是,你select安装不在App Store中的应用程序是有限的 – 你可以将应用程序作为一个testing版(限制为100个用户)分发,或越狱你的iPhone。 然而,Android允许你从任何地方安装应用程序,包括一个网页。

应用程序

Android平台的核心devise哲学之一是“所有应用程序都是平等的”,这意味着您可以用第三方版本免费更换手机上的应用程序。 实际上情况并非如此,因为许多Google应用程序具有大多数应用程序无法使用的特殊function(请参阅:Android电子市场),或者使用未公开的/本机API(请参阅: 日历 )。

另一方面,iPhone并没有提到平等的说法,苹果的立场大体上是“只有一个办法,那就是苹果的方式”。 此外,第三方iPhone应用程序可能无法在Android应用程序中运行。 iPhone OS 4.0的新function是应用程序能够在后台运行 。 iPhone应用程序目前可以做的一件事是Android应用程序无法接收推送通知。 Android 2.2的新function是应用程序通过称为Android Cloud的接收推送通知的function 。

来源

Android是开源的 – 主要是(一些固件组件是封闭的源代码)。 即便如此,还是有一些火箭科学只是为了让Android代码库进行编译。 此外, Google已经发送了终止订单,以重新发布包含Android电子市场和Google地图应用程序的自定义图片。

iPhone是完全封闭的源代码,最近对开发人员协议的修改一直存在争议,因为他们要求提交给app store的所有应用程序最初都是用iPhone OS WebKit执行的“Objective-C,C,C ++或JavaScript”引擎,只有用C,C ++和Objective-C编写的代码可以编译并直接链接到文档化的API“

SDK

Android SDK可以自由下载 ; iPhone SDK需要免费的用户注册才能下载。 Android开发可以在Mac OS X,Windows或Linux下完成,而iPhone开发只能在Mac OS X下进行。如果您想在实际设备上testing您的软件,您还需要支付99美元的iPhone开发者帐户(而不是模拟器)。

用户库

最后但并非最不重要的是用户群。 当最初编写这个答案时,iPhone有更大的用户群,并且比Android快得多。 随着Android开始支持多种运营商和硬件平台,这种情况正在发生变化(请参阅: 开放手机联盟 )。 运行Android 的设备列performance在相当长,尽pipe还没有与iPhone的普及性相匹配。

一些分析师现在报告说,Android超出了iPhone,并预测Android将很快超过iPhone的市场份额。 其他分析师认为,苹果将在iPhone 4g发布的时候起步。 前者似乎更可能基于个人电脑行业的平行历史 – 苹果的devise和用户体验被谷歌微软复制,并开放在商品硬件上运行。

如果你说iPhone是限制性的 ,我会把Android描述成不成熟的

如果你正在做一些不重要的程序,那么Android中仍然存在许多错误,你将不可避免地遇到。 其中一些只存在于仿真器上,而另一些仅在实际的电话上。

虽然根据我的经验,使用Eclipse进行Android开发与使用Xcode进行iPhone开发一样好,如果不是更好。 Google提供的工具集非常完整,并且是跨平台的。 垃圾收集器在编程时确实有很大的不同。

我假设你已经有一个苹果,否则iPhone将不会是一个选项。

iPhone的发展并不特别限制。 在苹果的App Store上获得应用程序是限制性的一部分。

如果您正在开发的应用程序遵循苹果公司关于允许iPhone应用程序执行的指导原则,那么挑选它作为您的初始开发平台似乎是不容小觑的。 如果它违反了苹果的指导方针,不能修改以遵循苹果的指导方针,那么您的市场将被限制在越狱手机 – 一个非常小的子集。

那么苹果是开放的吗? 呃..不。 封闭的硬件,封闭的软件,封闭了一切。 我认为恶魔岛比苹果公司更开放,至less你可以离开你的牢房。

你可以写一个iPhone的应用程序。 它会被批准吗? 那么不确定。 无论出于何种原因,他们都可以否认。 你可能已经使用了蓝色的背景,而苹果只喜欢白色和灰色,因此否认。

但是,Android是完全开放的。 你可以开发它,甚至开发Android本身。 不要害怕被剥夺。

但是非常严肃 。 苹果拥有更大的市场份额,数百万人使用并热爱iPhone,他们很可能不会离开相当长的一段时间。 而另一方面,Android是T-Mobile的。 有人甚至使用T-Mobile?

国际海事组织,如果你没有我将为iPhone开发的gPhone。 然而,尽pipe我不喜欢苹果公司这种封闭性的哲学,但如果你想用你的应用程序赚钱的话,他们是更好的select。

有一些限制…

  • 一些function需要根深蒂固的电话(例如,根用户的无线系统 )
  • 通过Android Market进行分销受制于开发者分发协议 。 由于承运人协议,Google 限制了这个系绳应用的使用权限 。
  • 一些Android API没有完成(例如蓝牙HID )

“限制”可能意味着两件事情:

  1. 能够安装任何你想要的。 谷歌是非常好的,诺基亚在中间,苹果是最糟糕的
  2. 你可以做什么与你的应用程序。 他们都可以任意限制你可以做什么,不可以做什么,但是在我看来,诺基亚是最不严格的,谷歌中间人和苹果最差(再次)。

因人而异

不,您可以自己签署应用程序,并通过您自己的Web服务器或其他方式分发产生的APK文件。

是的,Android确实是开放的,你可以发布任何你想要的市场但是:

  1. 你仍然需要学习如何签署你的应用程序,并介意技术发布要求市场(如保持适当的版本ID等)

  2. 如果你真的想从/向任何人发送/发送软件包,那么软件包的接收者(称为APK文件)将需要知道如何使用名为'adb'的命令行工具pipe理他们的电话以安装和卸载应用程序这样做很简单,但你需要安装Android驱动程序和SDK工具。

为了公平地使用iPhone开发模式,您也可以合理轻松地分发应用程序的testing版本,虽然可能不如使用Android那么容易。 您的testing人员需要为您提供一个在设备连接时从iTunes获得的特殊设备ID,然后创build一个许可证文件,其中包含您的所有testing人员的密钥,这些密钥将随应用程序的发布目录一起分发。 用户然后通过iTunes安装你的应用程序。

在大多数情况下不行,但Google已经允许运营商和设备制造商限制某些事情的能力。 运营商可以阻止个人应用程序。 运营商/制造商也可以防止设备的某些function。

一个例子是摩托罗拉Backflip,它不会让你安装非官方的市场应用程序。 还有一些手机无法进入官方市场。