Android 如何破解兼容性困局

news/2024/7/7 7:35:16

最新的消息表明,Android 手机的销售量超越 iPhone,虽然在整体市场占有率上,仍然不及竞争对手,但是却已经初现王者风范,一些文章也预测 Android 最终会稳坐智能手机第一把交椅。

Android 的确是十分有潜力的,在谷歌的推进下,多家知名手机生产商倾力支持这个开源的智能系统。为用户提供了诸多选择。

相较于苹果的 iPhone 使用一个系列的产品参与整个市场的竞争,像 Android 这样开放的、百家争鸣的情形是有优势的。各种型号的手机,为不同层次的用户提供了适用的产品,破除了饱受诟病的运营商限制,从而使得用户能够更加自由。

然而正像先前一些文章所指出的那样,这种开放是一把双刃剑。

具体说来,不同厂商生产的不同型号的手机由于硬件和软件上的差异,使得电子商店上的应用兼容性变差。

其中硬件上的差异包括核心性能和交互固件上的差异。不同手机的核心性能差异导致同一应用再不同手机上运行体验的差异,在高端的手机上可以流畅运行的 软件转移到主流平台就会出现难以运行的情况,这种情况将会降低应用和平台本身在用户中的口碑。而虽然目前来说大多数智能手机都标配了多点触摸屏幕和重力感 应固件。但是一些手机还加入了轨迹球,数量不一的按键等,触摸屏最多支持的点数也不同。这些差异使得不同手机拥有不同的交互方式,应用程序如果针对其中一 种手机设计,那么对于其他手机的兼容必然减弱。

软件方面,主要是一些手机拥有自己的 UI 设计,这些 UI 设计也会倒是应用程序的兼容性问题。

这些兼容性存在差异的手机共享一个电子商店,商店内的应用在下载时大多不能先行判别兼容程度,从而可能导致用户的损失。

与开放性相对,为了克服这些缺点,iPhone 使用单一系列的解决方案,将平台几乎完全封闭起来,这样虽然保证了兼容性,却也丧失了广泛性。也就是说这一产品综合考虑功能和价位后并不适合所有人。

我们看到 iPhone 试图把自己打造成一个广泛的平台,它在硬件上采用较为适中的配置,通过和运营商捆绑而降低价位,然后通过近乎无限的可扩展性尽量适合所有用户。但这样做的作用毕竟有限。

比如说一些商业用户,虽然在 iPhone 的基础上添加应用软件完全可以满足办公的需要,但是却因为这需要额外费用而没有其他厂商的解决方案划算。所以限制了 iPhone 扩展的领域。

Windows Phone 7 也有类似问题,微软为使用它的手机定立了严格的标准,连手机按键的个数和设计都有规定,这样无疑会影响创新,导致设计千篇一律,使用户失去选择的兴趣。而且在这样的情况下,价位也很难做出区分。实际上抑制了内部的有益竞争。

那么如何能够破解 Android 开放性的魔咒,又保持开放性呢?

现在,有一些应用会事先验证手机性能,再选择安装高级版本或是低级版本,但这样做是不够了。也增加了开发者的负担。

谷歌应该首先在电子商店上强化兼容性测试,使得不兼容的应用不会被用户下载安装,从而保证用户不会因此遭受损失。也许对不同性能的手机进行分级是一个不错的选择,应用程序可以选择自己支持的最低等级,从而保持流畅性。

谷歌也应该对外设固件做出一些规定,除了标配的触摸屏和重力感应外,一些有创意的新硬件也应该加入名单。不时更新这个名单,从而剔除过时的设计,加入创新的设计等。

但是若要真正破解兼容性问题,需要做得还很多。这需要谷歌和其他手机厂商共同发挥智慧。

我们相信开放是一个正确的道路,他带来的好处比缺点多,当 Android 真正破解了兼容性困局,或许就是它成为智能系统王者的时候了。

转载于:https://www.cnblogs.com/top5/archive/2010/08/08/1795088.html


http://www.niftyadmin.cn/n/3613031.html

相关文章

webpack学习路径(01.webpack的配置及使用)

对于webpack,我的理解是一种工具提供了友好的前端模块化开发的支持,可以解决代码压缩混淆,浏览器兼容性问题,以及提升性能等主要功能, 安装配置过程: 首先创建一个根目录(随便创建一个文件夹&…

C#中直接打印Report文件(rdlc)

Visual Studio自带的报表文件(rdlc,后面提到的报表,都指rdlc报表文件)虽然功能相对不是十分强大,但应付一般的报表要求也是绰绰有余了。关于rdlc报表的使用和设计方法,这里就不做讲解了,本文主要…

士农工商

中国古代,把商排在了最低等级,其实这是有道理的,商人是滋生腐败的源头,以盈利为目的的运营,只要没有很好的规范,即使牺牲了全世界,也会有人去做,这里的重点就是规范,不过…

vsCode自动修复规范报错的配置

1.先要安装Eslint 和Prettier - Code formatter插件 2.在settings-json中添加 (1) //Eslint插件的配置 “editor.codeActionsOnsave”:{ “source.fixAll”:true, }, (2) //prettier配置 “eslint.alwaysShowStatus”: true, &quo…

HDOJ 1181 HDU 1181 变形课 ACM 1181 IN HDU

MiYu原创, 转帖请注明 : 转载自 ______________白白の屋题目地址:http://acm.hdu.edu.cn/showproblem.php?pid1181 题目描述:代码变形课Time Limit: 2000/1000MS (Java/Others) Memory Limit: 131072/65536K (Java/Others)Total Submission(s): 2655Accepted Submission(s)…

Linux Platform Device and Driver

从Linux 2.6起引入了一套新的驱动管理和注册机制:Platform_device和Platform_driver。 Linux中大部分的设备驱动,都可以使用这套机制, 设备用Platform_device表示,驱动用Platform_driver进行注册。 Linux platform driver机制和传统的device driver 机制…