热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

安卓编年史(4):Android

安卓0.9显示着横屏的主屏幕——后续一些版本无法实现的一个特性[RonAmadeo供图]尽管从功能上很难将模拟器和操作系统区分开,但安卓0.9是第一个支持横屏显示的版本。更让人惊讶

安卓0.9显示着横屏的主屏幕——后续一些版本无法实现的一个特性。

安卓 0.9 显示着横屏的主屏幕——后续一些版本无法实现的一个特性 [Ron Amadeo供图]

尽管从功能上很难将模拟器和操作系统区分开,但安卓 0.9 是第一个支持横屏显示的版本。更让人惊讶的是,几乎所有东西都支持横屏模式,在某些方面安卓 0.9 甚至做的比 KitKat 更好。在 Kiakat 中,主屏幕和拨号被锁定为竖向并且无法旋转。但在安卓 0.9 这里,对任何一个应用横向显示都不是问题。(有谁知道怎么把 Nexus 5 从 Kitkat 升/降级到安卓 0.9 吗?)

截图同样显示了安卓 0.9 中的新的音量显示设计。它抛弃了在 Milestone 3 中初次登场的旧铃铛式控制界面。那是一个巨大的,充满屏幕的界面。实际上,安卓 4.0 的重新设计中让它变得更小了,但它仍然是个问题。(你想增加音量却因此没法看到视频了这种情况特别烦人。)

新通知面板,抛弃了应用快捷方式并添加了顶部部分。

新通知面板,抛弃了应用快捷方式并添加了顶部部分 [Ron Amadeo供图]

几乎每个安卓版本中的通知面板都有一定的调整,安卓 0.9 也不例外。电池电量图标进行了重绘,变成了黑底绿色图标,其它的状态栏图标变为黑色,白色以及灰色。状态栏左侧部分明智地选择在通知面板打开的时候显示日期。

通知面板加入了一个新的顶部部分,它能够显示运营商名称(在模拟器里显示“安卓”),以及一个巨大的写着“清除通知”的按钮,它能够让你不用打开应用而彻底清除通知。应用程序图标被取消了,替换为通知到达的时间,“最新事件”文字被更换为简单的“通知”。面板的空白部分现在是灰色的而不是之前的白色,底部的滑动条也进行了重新设计。上面两张图片的底部看起来并没有对齐,但这是因为 Milestone 5 的通知面板在面板底部有一圈空白。安卓 0.9 的通知面板是完全直达底部边缘的。

安卓0.9和0.5的浏览器,展现出新的无色彩菜单。

安卓 0.9 和 0.5 的浏览器,展现出新的无色彩菜单 [Ron Amadeo供图]

浏览器主页现在是加载一个真正的网站,而不是像 Milestone 5 中那样的本地存储的假 Google 页面。Webkit 的版本升至 525.10,但是看起来它似乎没法正确渲染更现代的 Google.com 搜索按钮。纵观安卓 0.9,Milestone 5 中的菜单设计已经被抛弃,取而代之的是重新设计的灰色图标。这些截图的区别十分的明显,因为所有的颜色都被去除了。

“更趋向于”列表式的菜单变得更高了一点,并且只是一个没有图标的列表而已。安卓 0.9 已经获得了其它搜索方式,这次是在浏览器菜单里。和主屏幕小部件,主屏幕菜单按钮,以及浏览器主页,它们共同组成了四个搜索框。谷歌从未隐藏它的主要业务是什么,就连在它的操作系统中也是这样。

从左到右:安卓0.9的浏览器缩放控件,页面内搜索界面,浏览器窗口,以及设置。

从左到右:安卓 0.9 的浏览器缩放控件,页面内搜索界面,浏览器窗口,以及设置 [Ron Amadeo供图]

安卓 0.9 带来了许多浏览器改进。谢天谢地缩放控件又能正常使用了,而且从疯狂的垂直控制变成了简单的加减按钮。谷歌做了个符合常识的决定,将缩放控制从屏幕中间移到了屏幕底部。在这些缩放控件中,安卓在一致性方面的努力显而易见。这些看起来是系统中唯一的圆形按钮。

安卓 0.9 中的新特性“页面内查找”会高亮显示页面内的关键词。但总的来说,UI 还是十分粗糙的——文本框比它应有的高度高了许多,“完成”按钮带的勾选框对这个页面来说只是一种图标而已。“完成”基本上是个“关闭”按钮,这意味着它也许应该是个右对齐的“X”按钮。

这个版本的系统没有设置界面,但是浏览器最终还是有了自己的设置界面。它会有个桌面式选项的弹窗,Javascript,隐私和 COOKIE,保存的密码以及表单数据。甚至还有 Google Gears 整合(还记得 Google Gears 吗?)。

拨号盘以及打开菜单的正在通话界面。

拨号盘以及打开菜单的正在通话界面 [Ron Amadeo供图]

拨号和联系人在安卓0.9中实际上是同一个应用——两个图标只是打开不同的标签而已。将联系人像这样附到拨号盘表明了智能手机联系人的第一目的还是通话,不是短信,电子邮件,即时通讯或查找地址。最终谷歌还是会完全接受非传统的智能手机沟通,将联系人和拨号分为两个独立的应用程序。

Milestone 5中大多数拨号盘的缺陷在安卓0.9中得到了修复。“最小化”标签被一组正常的亮/暗标签替代。对话气泡式的退格键被替换为正常的退格图标并集成到了拨号数字显示界面。数字键变成了圆形,尽管这个系统的其它东西是圆角矩形的(至少这次文本是垂直对齐的)。谷歌还修复了Milestone 5中“-”键,“*”键和“#”键不平衡的问题。

在安卓0.9中点击显示的号码会开始一个通话。这是十分重要的,因为这是摆脱安卓设备硬件实体“拨号”和“结束”键的一大步。另一方面,来电界面却走的是完全相反的道路,去除了在安卓0.5中显示于屏幕之上的“接听”和“拒绝”按键。谷歌会花上接下来几个版本的时间去摸索在特定的显示之下是否需要硬件实体拨号键。但是直到安卓2.0和摩托罗拉Droid面世,实体拨号按钮才最终变成了可选选项。

来电界面的所有选项隐藏在目录按钮之后。Milestone 5不支持距离传感器,所以它采取了简单粗暴的路线,在通话过程中禁用触摸屏。安卓0.9为G1开发,它有个距离传感器。最终谷歌没有在通话的时候禁用触摸传感器。

安卓0.9和0.5中独立的联系人界面和联系人编缉界面。

安卓 0.9 和 0.5 中独立的联系人界面和联系人编缉界面 [Ron Amadeo供图]

Milestone 5 的一些联系人信息有令人困惑的标签,像电子邮件只被打上“主要的”标签而不是“主电子邮箱”标签。安卓 0.9 用各部分的水平标题纠正了这个错误。而且现在左侧的每个联系人类型都有了手形图标Action icons

编缉联系人界面如今是个更加繁忙的地方。每个输入框都有删除按钮,特定联系人铃声,一个显示在屏幕上的“更多信息”按钮用来添加输入框,一个是否将通话直接发送到语音信箱的复选框,以及在列表底部的“保存”和“放弃修改”按钮。从功能上来说,相对于旧版本这是个巨大的进步,但它看起来仍然很混乱。


安卓编年史(4):Android 0.9 Beta——嘿,这看起来很眼熟!

Ron Amadeo / Ron 是Ars Technica的评论编缉,专注于安卓系统和谷歌产品。他总是在追寻新鲜事物,还喜欢拆解事物看看它们到底是怎么运作的。@RonAmadeo


via: http://arstechnica.com/gadgets/2014/06/building-android-a-40000-word-history-of-googles-mobile-os/4/

译者:alim0x 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

安卓编年史(4):Android 0.9 Beta——嘿,这看起来很眼熟!

推荐阅读
  • 本文将详细介绍如何配置并整合MVP架构、Retrofit网络请求库、Dagger2依赖注入框架以及RxAndroid响应式编程库,构建高效、模块化的Android应用。 ... [详细]
  • 本文探讨了Android系统中联系人数据库的设计,特别是AbstractContactsProvider类的作用与实现。文章提供了对源代码的详细分析,并解释了该类如何支持跨数据库操作及事务处理。源代码可从官方Android网站下载。 ... [详细]
  • 本文详细介绍了PHP中的几种超全局变量,包括$GLOBAL、$_SERVER、$_POST、$_GET等,并探讨了AJAX的工作原理及其优缺点。通过具体示例,帮助读者更好地理解和应用这些技术。 ... [详细]
  • 我在尝试将组合框转换为具有自动完成功能时遇到了一个问题,即页面上的列表框也被转换成了自动完成下拉框,而不是保持原有的多选列表框形式。 ... [详细]
  • 本文详细介绍了跨站脚本攻击(XSS)的基本概念、工作原理,并通过实际案例演示如何构建XSS漏洞的测试环境,以及探讨了XSS攻击的不同形式和防御策略。 ... [详细]
  • 本文详细介绍了在PHP中如何获取和处理HTTP头部信息,包括通过cURL获取请求头信息、使用header函数发送响应头以及获取客户端HTTP头部的方法。同时,还探讨了PHP中$_SERVER变量的使用,以获取客户端和服务器的相关信息。 ... [详细]
  • 使用jQuery与百度地图API实现地址转经纬度功能
    本文详细介绍了如何利用jQuery和百度地图API将地址转换为经纬度,包括申请API密钥、页面构建及核心代码实现。 ... [详细]
  • 使用 ModelAttribute 实现页面数据自动填充
    本文介绍了如何利用 Spring MVC 中的 ModelAttribute 注解,在页面跳转后自动填充表单数据。主要探讨了两种实现方法及其背后的原理。 ... [详细]
  • 本文详细介绍了Socket在Linux内核中的实现机制,包括基本的Socket结构、协议操作集以及不同协议下的具体实现。通过这些内容,读者可以更好地理解Socket的工作原理。 ... [详细]
  • 本文介绍了一种在 Android 开发中动态修改 strings.xml 文件中字符串值的有效方法。通过使用占位符,开发者可以在运行时根据需要填充具体的值,从而提高应用的灵活性和可维护性。 ... [详细]
  • Kubernetes Services详解
    本文深入探讨了Kubernetes中的服务(Services)概念,解释了如何通过Services实现Pods之间的稳定通信,以及如何管理没有选择器的服务。 ... [详细]
  • LoadRunner中的IP欺骗配置与实践
    为了确保服务器能够有效地区分不同的用户请求,避免多人使用同一IP地址造成的访问限制,可以通过配置IP欺骗来解决这一问题。本文将详细介绍IP欺骗的工作原理及其在LoadRunner中的具体配置步骤。 ... [详细]
  • 2023年1月28日网络安全热点
    涵盖最新的网络安全动态,包括OpenSSH和WordPress的安全更新、VirtualBox提权漏洞、以及谷歌推出的新证书验证机制等内容。 ... [详细]
  • 本文详细介绍了如何在PHP中使用Memcached进行数据缓存,包括服务器连接、数据操作、高级功能等。 ... [详细]
  • selenium通过JS语法操作页面元素
    做过web测试的小伙伴们都知道,web元素现在很多是JS写的,那么既然是JS写的,可以通过JS语言去操作页面,来帮助我们操作一些selenium不能覆盖的功能。问题来了我们能否通过 ... [详细]
author-avatar
我在等白色的雪
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有