Android 4.1中文简介

本文主要译自Android开发者网站的面向开发者的Android 4.1简介文章,目的在于简述Android 4.1系统的新特性,提供一个概略级的了解。没有使用该文章中的图片。相关图片以及详细的内容请直接点击链接查看。

Android 4.1 将是迄今为止最为快速流畅的 Android 版本,同时增加了大量对开发者和用户来说很便利的功能。要了解最新的 API 具体细节,请参见“Android 4.1 APIs”。

更快,更流畅,更多反馈

Android 4.1 进行了大量优化来降低延迟,提供轻松的操作体验。Android 4.1 采用了垂直同步计时(vsync timing) 来实现稳定的动画帧速。渲染、触摸事件、刷新等都按照相同的频率进行而不会忽快忽慢。

Android 4.1 还在图形流水线中增加了三倍缓冲(triple buffering来进一步提升各种操作的流畅性。

除了将触摸与垂直同步计时相同步(synchronizing touch外,Android 4.1 还会预测(anticipating触摸位置来进行提前刷新以提高流畅度。在必要时还会使用CPU输入增强(CPU input boost来确保没有延迟。

Android 4.1 使用了新的 systrace 来直接从内核收集数据,进一步提升流畅度。这些数据被表示为一组垂直堆叠的时序图,用来分离渲染中断和其他事件。该工具在最新的 SDK 已经可用。

增强的使用性

新增了一些帮助使用设备的功能。

更好的国际化支持

在 TextView 和 EditText 中支持双向文字显示(从左至右与从右至左)。

新增一些语言支持。新版的表情文字支持。更好的日语字形支持。WebView 中的垂直文本支持。等。

支持自定义键盘布局。并可开发相应的应用供用户使用。

更漂亮的UI

可扩展通知能够提供更多的信息以及新类型的数据。支持更多的通知风格并能给通知增加更多的可操作功能。

可缩放桌面插件能自动变更为适合的尺寸以显示在桌面上。

得益于简化的任务导航,返回上一级菜单变得更为简单而易于理解。这可以通过 XML 属性的方式在 manifest 文件中实现。

而新的 TaskStackBuilder 类则提供了快速启动任务栈中的任务的可能。

新的 ActivityOptions 辅助类使得 Activity 的动画效果更易于控制。此外还有新的淡入淡出等过渡动画效果。

GridLayout 和 ViewStub 也可作为可遥控视图用于桌面插件等场合。

动态桌面背景支持预览功能使得用户能更容易地识别它们。

联系人照片则支持高达720×720的分辨率。

新的输入类型

应用程序可以得知设备的连接情况,在比如连接 USB 或蓝牙时得到通知。

应用程序还能获取当前连接的外部输入设备的情况甚至控制设备的震动

动画和图形

应用程序可以通过系统级的垂直同步计时来获得更好的图形动画性能。同时还能使用种类更为丰富的动画效果。

新的连接功能

通过基于 NFC 的 Android Beam 实现更轻松的分享功能。

更强的 WiFi 网络支持使得设备可以和其他 WiFi 设备连接并互换数据。

支持网络带宽管理以更好地管理数据流量

新的多媒体功能

新增包括低级解码支持、USB 音频、音频录制触发功能、支持 5.1 声道 ACC 解码的多声道音频、音频预处理和链化等在内的音频高级功能。

支持媒体路由器以选择媒体播放方式。

Renderscript运算

Android 4.1 扩展了 Renderscript 运算使得支持更强的灵活性,能在更多的硬件上更好地运行。

浏览器和 WebView

Android 4.1 中有更好的 HTML5/CSS动画/Javascript 等性能。

Google API 和服务

支持 Google Cloud Messaging for Android,用于发送简短消息。

支持应用加密以更好地防止盗版。

支持应用程序的智能升级,只需下载所需升级部分的 apk 文件即可,减少了数据流量的使用。

以及将来更多的 Google Play 服务。

这次的 Android 4.1 虽然和 4.0 相比没有提升大版本号,但是改进之处也相当多。能很明显的感受到 Android 系统正在一步步走向成熟与完善。虽然过往机型不一定都能得到最新系统的升级,不过随着时间的推移,Android 系统设备的体验必然会越来越好。

Xperia 智能手机 Android 4.0 升级消息

索尼移动(Sony Mobile Communications)昨天进一步公布了其智能手机 Xperia 系列近期的升级计划

2012年机型中,Xperia S将最早得到Android 4.0(下称ICS,Android 4.0的代号Ice Cream Sandwich的缩写)升级。于6月底开始依次推送。而Xperia P和Xperia U则将在稍晚的第三季度。

而2011年机型,包括: Xperia arc, Xperia neo, Xperia mini, Xperia mini pro, Xperia pro, Xperia active 以及Sony Ericsson Live with Walkman,将在本月底开始得到系统升级。

这次ICS升级将直接升级至4.0.4版本,之前已经得到4.0.3版本升级的Xperia arc S, Xperia ray以及Xperia neo V用户也将得到最新升级。

而 Xperia PLAY 则由于在ICS版本中无法确保稳定的游戏体验而将不会得到ICS升级。一些开发者社区对Xperia PLAY 的ICS beta 系统固件的测试反馈也确认了这一事实。

联想到2010年机型的Xperia X10曾经因为触摸屏兼容性问题而被宣布将不会支持多点触摸。之后在用户的强烈呼声下最终得到了有限的多点触摸支持。(由于X10的屏幕硬件原因只能支持缩放等多点操作,而对旋转等操作无法准确识别。当时的索尼爱立信因此做出了不提供多点支持的决定。)这次会不会因为PLAY用户的强烈反应而最终得到ICS的升级呢?不过X10在获得了Android 2.3.3升级后由于硬件性能不足而多了一些包括音频播放卡顿之类的小问题,所以虽然新版本系统很吸引人,但是一味追求版本号也并不一定是最好的。现在的智能手机和PC一样,只有高价格高配置的硬件才能提供各方面的最佳体验,而中低端设备只能无奈地接受流畅度不高的残酷事实了。这一点在硬件数量仅有几种的iOS设备上尚不明显(虽然早期型号的iOS设备对于新系统/新应用/新程序也面临着流畅性问题,但是大部分苹果(Apple)用户似乎都会及时更新至最新硬件…),但是对硬件规格纷繁的Android设备上来说却是成为了一个话题。微软(Microsoft)对于Windows Phone 7的解决方案是严格限制硬件规格,而Google似乎依然打算在硬件上对厂商不加限制——就像微软不对PC的硬件作限制一样,那么中低端Android设备就会很无奈地和中低端PC一样,在购买成本较低的同时始终成为较早被软件“抛弃”的设备了吧。

手势操作

手势操作允许用户通过摆弄所提供的屏幕对象来与应用程序交互。下面展示了 Android 所支持的核心手势操作集。

触摸(Touch)

触发所选对象的默认功能。

动作:按下(Press)、放开(Lift)

长按(Long press)

进入数据选择模式。允许你选择一个视图中的若干个项目并通过上下文相关操作栏(contextual action bar)对数据进行操作。尽可能避免通过长按来显示上下文菜单(contextual menu)。

动作:按下、等待(保持,Wait)、放开

滑动(Swipe)

滚动那些无法在一个视图中完整显示的内容,或是在相同层级的视图之间切换。

动作:按下、移动(Move)、放开

拖动(Drag)

重新排列一个视图中的数据,或是将数据移入某一容器(例如文件夹或 Home 界面)中。

动作:长按、移动、放开

双击(Double touch)

缩放内容。也被用于文本选择的备用手势操作。

动作:快速连续双击屏幕

两点远离(Pinch Open)

放大局部内容。

动作:两指按下、反向移动、放开

两点靠近(Pinch close)

缩小当前内容并增加整体显示范围。

动作:两指按下、相向移动、放开

 

上一节

下一节

本页部分内容根据Android Open Source Project创作并共享的内容修改,并在知识共享 署名2.5许可协议中所述条款的限制下使用。

Android中使用可以控制状态(开始、暂停、停止)的 ProgressBar

代码与范例:

说明:可以通过一个辅助类来方便地改变控制 ProgressBar 的线程的运行状态。一个可以暂停与中断的进度条在有些情况下是很必要的。

Android 4.0 中的新要素

导航栏

Android 4.0 通过使用包含了返回键(Back)、Home键和最近项目键(Recents)的虚拟导航栏来替代手机上传统的实体按键。请阅读“兼容性范式(英文/中译)”一文以了解有实体按键的手机和依赖菜单键的早期应用是如何被新版本的操作系统所支持的。

操作栏(Action bar)

操作栏是一个 Android 应用的最重要的结构性元素(structural element)。它提供了贯穿整个平台的导航功能并支持在你的应用中显示操作快捷方式。

多板块布局(Multi-pane layouts)

创建在不同条件和屏幕尺寸下都能自如缩放的应用对于 Android 开发来说是很重要的一点。多板块布局使你能够将不同的活动一起显示在平板设备的同一个视图上,而在小型设备上,这些活动则将被分开在不同视图中单独显示。

选择(Selection)

过去手势操作“长按”的作用是用于显示对象的上下文有关操作,而现在这一操作被用于数据选择。在选择数据时,将出现上下文有关的操作栏以供快捷操作。

上一节

下一节

本页部分内容根据Android Open Source Project创作并共享的内容修改,并在知识共享 署名2.5许可协议中所述条款的限制下使用。

Android中使用SeekBar

代码与范例:

说明:SeekBar 是 Android UI 中常用的组件,在有范围的快速数值选择情况下能发挥较好的作用。

语言风格

在为你的应用撰写文本内容时需要注意的几点:

  1. 保持简洁。要简明——简单并且准确。标题保持在30个字母之内(包括空格)【译注,这里是英文的情况,中文的话,十五个汉字以内为宜】,如非必要不要使用更多的字母。
  2. 保持简短。请假设你现在正在对一个聪明机灵但不明白那些专业术语甚至英语水平也不是特别好的用户说话。你需要使用简短的词语,主动形式的动词和常见名词。
  3. 用户友好。使用缩写。使用第二人称(“你”)直接和用户交谈。按照你平时的日常交谈中所使用的遣词措句来书写语句。不要使用粗鲁或惹人厌烦的语言,要让用户感觉安心、愉快且被鼓励。
  4. 在文首说明最重要的内容。最初的两个单词(包括空格约11个字母)【译注,同样是英文的情况。中文也须相应注意】应该至少包含了语句中最重要的信息的一部分。如果不是,请改写。
  5. 只写需要写的内容,不要写多余内容。不要对细微的差异作解释,大多数用户不关心这些问题。
  6. 避免重复。如果一个词在屏幕中或一段文本里明显重复出现,请想办法修改使其只出现一次。

范例

【译注,范例中的英文都比较简单,且需要注意的地方能与中文相通,就不做翻译了】

1.保持简洁。在启动向导中:

【过于正式的文字】

Consult the documentation that came with your phone for further instructions.

【改进版本】

Read the instructions that came with your phone.

2.保持简短。在地理位置设置中:

【容易使人困惑的文字】

Use GPS satellites
When locating, accurate to street level.

【改进版本】

GPS
Let apps use satellites to pinpoint your location.

3.用户友好。当程序崩溃时弹出的窗口:

【容易令人懊恼的版本——说“Sorry”只是伤口撒盐】

Sorry!
Activity MyAppActivity (in application MyApp) is not responding.
Force close Wait Report

【改进版本——简短而直接,不含缺乏诚意的道歉】

MyApp isn’t responding.
Do you want to close it?
Wait Report Close

4.首先说明重要信息

【把新情报置于了最后】

77 other people +1’d this, including Larry Page.

【改进版本】

Larry Page and 77 others +1’d this.

【把要做的任务写在了最后】

Touch Next to complete setup using a Wi-Fi connection.

【改进版本】

To finish setup using Wi-Fi, touch Next.

5.只描述需要的内容,不说多余的内容

【某个启动向导中的文字】

Signing in…
Your phone needs to communicate with
Google servers to sign in to your account.
This may take up to five minutes.

【改进版本】

Signing in…
Your phone is contacting Google.
This can take up to 5 minutes.

 

上一节

下一节

本页部分内容根据Android Open Source Project创作并共享的内容修改,并在知识共享 署名2.5许可协议中所述条款的限制下使用。


图标设计(Icongraphy)

图标(icon)是占据一小块屏幕空间的图形,它提供了某一操作、状态或是一个应用程序的快速直观的表达。

应用程序启动器(launcher)

启动图标是你的应用程序在“主屏幕(Home)”或是“所有程序界面(All Apps)”中的视觉显示。因为用户可以改变主屏幕的壁纸,所以需要确保你的启动图标在任何类型的背景下都能被看清。

尺寸和缩放

移动设备上的启动图标尺寸必须为48×48 dp

显示在Google Play上的启动图标必须为512×512像素

比例

图标的完整尺寸为48dp

风格

使用容易区分的轮廓。三维、正视方向、如果是自上向下的话则添加一些透视效果,以使用户看得出深度。

操作栏(Action Bar)

操作栏图标是你的应用程序中最重要操作的图形按钮。每一个图标都应该使用简单的类比以让用户一下子就能理解其含义。

预定义的图标应当被用于例如“刷新”和“共享”等特定的常用操作。下面的下载链接提供了适合于不同屏幕密度以及Holo Light和Holo Dark主题的图标。该解压包中还包括了可以方便地修改以适应自定义主题的原型图标,以及可供深度自定义的Adobe® Illustrator®资源文件。

下载操作栏图标包

尺寸和缩放

手机上的操作栏图标应为32×32dp

中心区域与比例

完整尺寸为32×32dp

中心区域为24×24dp

风格

象形的、平面的、较少的细节,光滑弧线或是尖锐图形。如果图形很细,则左转或右转45度以填充整个中心区域。线条的粗细和线条间隔至少要为2dp。

色彩

色彩: #333333
启用: 60% 不透明度
禁用: 30% 不透明度

色彩: #FFFFFF
可用: 80% 不透明度
禁用: 30% 不透明度

小型图标/语境图标(contextual icon,即根据当前操作而变化的图标)

在你的程序里,对于表层操作(surface action)要使用小型图标且/或为条目提供状态图标。例如,在Gmail中,每一条消息都有一个星标用于将其标记为重要。

尺寸和缩放

小型图标应为16×16dp

中心区域和比例

完整尺寸为16×16dp。

中心区域为12×12dp。

风格

朴素、平面而简洁。实心图形比细框图形更容易看清。使用简单的视觉类比让用户可以简单地识别并理解其用途。

色彩

尽可能仅在需要时才使用艳丽的色彩。例如,Gmail用黄色的星形来表示被标记的消息。如果该图标是可以操作的话则采用和背景色对比强烈的色彩。

通知图标

如果你的应用程序会产生通知,则要在有新通知时提供一个系统可以用于显示在状态栏的图标。

尺寸和缩放

通知栏图标应为24×24dp

中心区域与比例

完整尺寸为24×24dp

中心区域为22×22dp

风格

使用平面而简洁的风格,并采用和启动图标相同的简单视觉类比。

色彩

通知图标必须是白色的。同时,系统可能会缩小且/或使图标变暗。

上一节

下一节

本页部分内容根据Android Open Source Project创作并共享的内容修改,并在知识共享 署名2.5许可协议中所述条款的限制下使用。

Android中将像素转换为sp/dp

代码与范例:

说明:将像素值与Android的尺寸单位dp转换。dp/sp的意义基本相同,都是与屏幕密度无关的尺寸单位,只不过前者用于字体尺寸以外的场合,而后者用于指定字体尺寸。在不同情况下,dp和sp所表示的尺寸会有些不同,这部分内容将在之后补充。