Android开发是否对iPhone有任何限制?

mrb*_*lah 39 iphone android

Android开发是否像iPhone一样受到限制,或者您可以从任何人那里下载任何内容吗?

我想了解iPhone或Android的开发,但据我所知,iPhone开发非常严格!

Luk*_*uke 34

关于两个平台的相对限制性,有许多方面需要考虑.

市场

在提交过程中,Android Market无疑比App Store的限制更少.好处是你可以在Android Market中获得你想要的任何东西.缺点是你可以在Android市场上获得你想要的任何东西(充斥着垃圾邮件的市场"应用程序"在某些方面受到限制).

iPhone方面的一个巨大负面因素是您安装不在App Store中的应用程序的选项有限 - 您可以将应用程序分发为测试版(限制为100个用户)或越狱iPhone.但是,Android允许您从任何地方安装应用程序,包括网页.

应用程序

Android平台的核心设计理念之一是"所有应用程序都是平等创建",这意味着您可以使用第三方版本自由替换手机上的应用程序.实际情况并非如此,因为许多Google应用程序要么具有大多数应用程序无法使用的特殊功能(请参阅:Android Market),要么使用未记录的/本机API(请参阅:日历).

另一方面,iPhone并没有对平等提出这样的主张,而苹果公司的立场一般是"只有一种方法可以实现,而这就是Apple的方式".此外,第三方iPhone应用程序可能无法在后台运行,而Android应用程序可以.iPhone OS 4.0的新功能是应用程序可以在后台运行.iPhone应用程序当前可以做的一件事就是Android应用程序无法接收推送通知.Android 2.2的新功能是应用程序能够通过称为Android Cloud的东西接收推送通知.

来源

Android是开源的 - 大多数(某些固件组件是封闭源).即便如此,还是有一些火箭科学只涉及到编译Android代码库.此外,谷歌已发出停止和停止订单,重新分发包含Android Market和Google Maps应用程序的自定义图像.

iPhone是完全封闭的源,最近对开发者协议的更改一直存在争议,因为它们要求提交给应用程序商店的所有应用程序最初都是用iPhone OS WebKit执行的"Objective-C,C,C++或JavaScript"编写的.引擎,只有用C,C++和Objective-C编写的代码可以编译并直接链接到Documented API"

SDK

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

用户群

最后但并非最不重要的是,用户群.当这个答案最初编写时,iPhone拥有更大的用户群,并且增长速度远远超过Android.随着Android开始支持多个运营商和硬件平台,这种情况正在发生变化(参见:开放手机联盟).该设备列表运行Android现在是相当长的,虽然还没有匹配iPhone的普及.

一些分析师现在报告说,Android的销量超过了iPhone,并预测Android将很快超过iPhone以获得市场份额.其他分析师认为苹果将在iPhone 4g发布时占据一席之地.前者似乎更有可能基于PC行业的平行历史 - 苹果的设计和用户体验被谷歌微软复制并开放在商用硬件上运行.

  • 然而,iPhone确实存在需要99美元的许可证来测试实际设备(模拟器外部)的问题. (8认同)

bgw*_*bgw 32

不!这就是Android的魅力所在.即使有相同的AppStore,您也可以从任何地方下载应用程序.另外,它是用Java编程的,所以你不必担心像垃圾收集那样平凡的事情(只是以速度为代价).

不要故意侮辱iPhone.这也是一个很棒的平台.


编辑:很多人一直注意到iPhone API不是限制性的,而是批准过程.这是事实,但iPhone的API在低级硬件访问,后台处理(仅3.0中的通知)等方面仍然有限.

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

另外,你考虑过制作JB iPhone软件吗?我不确定它的市场份额,但我知道很多人使用越狱设备.


编辑:我已经阅读了一些类似问题的帖子,因为垃圾收集器会导致Android的Java速度变慢.需要注意的事项.


Dav*_*Lin 8

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

Android中仍有许多错误,如果你正在做一些非常重要的程序,你将不可避免地遇到这些错误.其中一些仅存在于模拟器上,而其他只存在于实际的手机上.

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

我假设你已经有了Mac,否则iPhone根本就不是一个选择.

  • 垃圾收集和移动设备不能很好地协同工作.因此,iPhone应用感觉比其他平台应用更具响应性的原因之一. (7认同)

cee*_*yoz 7

iPhone开发并不是特别限制.在Apple的App Store上获得最终的应用程序是限制性的部分.

如果您正在使用的应用程序遵循Apple关于允许iPhone应用程序执行操作的指导原则,那么选择它作为您的初始开发平台似乎是明智之举.如果它违反了Apple的指导原则并且无法修改以遵循它们,那么您的市场将仅限于越狱手机 - 这是一个非常小的子集.