----------------------------------------------------------------------------------------------------------------------------------------------------------

原文作者:Google

原文地址:http://developer.android.com/design/wear/structure.html

原文版权:Creative Commons 2.5 Attribution License

译文作者:Jianan - qinxiandiqi@foxmail.com

版本号信息:本文基于2014-07-16版本号翻译

译文版权:CC BY-NC-ND 4.0。同意复制转载,但必须保留译文作者署名及译文链接。不得演绎和用于商业用途

----------------------------------------------------------------------------------------------------------------------------------------------------------

用户习惯于点击图标来启动应用程序,可是Android Wear不一样。一个典型的Wear应用程序会在一个情境的合适时刻插入一张卡片到信息流中。

这张卡片可能会包括一个用于高速交互的button来打开一个全屏视图(在一些情况下。卡片也可能不会提供交互button):

下面是简单排序的构建模块。你能够使用当中的一个或者多个模块。可是我们强烈推荐不要构建这样的应用:用户在启动或者退出应用之前必须细致考虑应该怎样响应一个指定的地点、活动、一天中某个详细的时间。或者是云端上发生的一些事情。

信息流中的上下文卡片

  1. Bridged notifications(桥接通知)是从手持设备上推送到穿戴设备上的通知,比如新的短信通知等等,它们使用的是的标准的Android通知。

    在穿戴设备上这样的通知仅仅须要少量甚至根本不须要不论什么代码。

  2. Contextual Notifications(上下文通知)是在穿戴设备上本地生成的。而且仅仅在相关的上下文时间点出现。比方当你跑步的时候出现一张锻炼身体的卡片。对照从手持设备上桥接过来的通知。你能够在这样的类型的卡片上做的很多其它。

全屏应用

  1. 2D Picker(二维选择器)是为了同意用户从一系列选项中做选择而设计的,比方选择艺术家和流派等等。每当有关联的时候。我们建议使用SDK中的预构建组件。
  2. 当主要的卡片后者信息流组件无法满足应用程序的时候,自己定义布局也是被同意的。

    比方显示一张图片或者地图。

1、Bridged Notifications(桥接通知)

在Android Wear上,这能够通过简单的途径来获取。

实际上。你的应用假设使用了通知就已经完毕了这一部分。

你能够使用新的notification APIs像加入extra pages一样加入详细的穿戴特征或者支持语音回复。

DEVELOPER DOCS Creating a Notification

2、Contextual Notifications(上下文通知,情境通知)

Android Wear擅好处理这样的事情:当用户须要的时候显示用户须要的信息和功能。

下面是它的工作原理:你的应用程序知道什么时候与用户有所关联。当相应的事件发生的时候,应用程序将会触发一个通知。

可能你正在设计一个跑步应用程序在用户跑步的时候使用。

或者是一个博物馆导航程序在用户參观你的博物馆时候使用。查看设计指南获取很多其它关于怎样让你的应用与上下文情境相关联。

在适合的上下文情境中正确触发相应事件是非常重要的事情。也是你设计良好的用户体验所须要做的事情。

实现这样的通知最简单的方法就是使用Android Notifications的标准模板。当然。你也能够在卡片中整合一个Activity来实现自己的界面布局。假设你真的决定这么做,我们强烈建议你看一看风格指南以保证你使用与设备一致的风格。

不要忘记測试你的应用程序的全部触发点。触发的次数太多会严重骚扰用户。以至于用户可能关闭你全部的通知。

DEVELIPER DOCS Creating Custom Layouts

3、2D Picker(二维选择器)

二位选择器设计模型(可作为GridViewPager组件)非常适用于在列表中显示选项。Google搜索的搜索结果就是採用这样的模型的好样例:


这样的模型能够用来显示一个单一的垂直列表。或者说是一维选择器。


它也能够作为一个二维选项矩阵。作为显示分类选项的一种方法。

Actions

关于每一张卡片的动作响应。使用Action cards pattern(模型)

Making it fast(让它执行更加流畅)

下面是我们一些怎样让二维选择器变得更加高速的建议:

  • 降低卡片的数量
  • 在顶部显示最经常使用的卡片
  • 让卡片尽可能保持简单
  • 优化速度以超过定制

导航应该是先垂直后横向。而且不是先横向后垂直,而且限制垂直方向上的卡片不超过5张。

Exiting(退出)

当用户做出选择之后,你应该关闭二维选择器。用户也可能通过将第一张卡片向下滑或者将最左边的卡片向右滑动来退出。

4、Breaking out of the card(with custom layouts) (使用自己定义布局突破卡片限制)

有一些东西你没办法在卡片上显示。比如在地图上滑动一些路线或者使用摇杆控制游戏。这些情况下,高速跳转到全屏可能是一个不错的解决方式。

在Android Wear上一个典型的全屏应用体验大致例如以下:

  1. 你的上下文卡片插入到信息流中
  2. 用户点击卡片的动作button。

  3. 打开一个微型交互的全名Activity。
  4. 退出Activity而且用户回到信息流中。

When to go full screen(进入全屏的时机)

我们强烈建议仅仅有当你无法在一张卡片上处理你的事务时才跳转到全屏界面。而且在用户完毕简单交互之后要高速退出全屏回到信息流中。这样才干让你的应用程序让用户感觉更像是系统的一部分。

Android Wear本身在语音回复或者停止可视化的时候会进入全屏。

Making it distinct(让它与众不同)

你的全屏界面不应该与卡片信息流非常相似以免误导用户。

假设你真的须要一个卡片风格的UI。应该考虑使用二维选择器。

Automatically exiting(自己主动退出)

非常多设备没有提供返回和主界面button,因此怎样退出是你应该考虑的事情。下面是一些自然退出的样例:

  • 假设地图要求用户标注一个地点,当用户标注后应该就退出。
  • 当一个小游戏完毕之后自然退出。
  • 一个动画应用能够在激活5秒钟之后退出。

Manually exiting(手动退出)

存在着这样的一些逻辑退出情况,比方在一些情境下用户想要立即退出。

这通常都是一些长时间执行的应用程序。在这样的情况下使用DismissOverlayView。你应该处理长按事件以发送退出的Intent。

Android Wear - App Structure for Android Wear(应用结构)的更多相关文章

  1. 轻松搞定表白女朋友:Android版APP (零基础也可直接下载软件)

    在我们平时生活当中,经常会看到一些表白女朋友的html网页,但是Android端的表白软件可以说是基本没有,笔者在全网搜了一下,就没有一个可以用的.安卓端可以给人一种定制和精美的感觉,这是网页所做不到 ...

  2. Android手机app的adb命令测试电量

    Android手机app电量测试 Android 5.0及以上的设备, 允许我们通过adb命令dump出电量使用统计信息 第一步:手机安装要测试的应用,打开手机开发者模式-USB模式,运行cmd.ex ...

  3. Android开发学习之路-Android Design Support Library使用(CoordinatorLayout的使用)

    效果图: 上面的这个图有两个效果是,一个是顶部的图片,在上滑之后会隐藏起来并且显示出一个ToolBar(ToolBar类似于ActionBar,但是只有ToolBar是兼容Material Desig ...

  4. Android Google 地图 API for Android

    从健康类 app Runkeeper 到游戏 app 精灵宝可梦,位置服务对现代 app 来说越来越重要. 在本文中,我们将创建一个 app,名字就叫做 City Guide.这个 app 允许用户搜 ...

  5. 1) 十分钟学会android--建立第一个APP,创建android项目

    一个Android项目包含了所有构成Android应用的源代码文件. 本小节介绍如何使用Android Studio或者是SDK Tools中的命令行来创建一个新的项目. Note:在此之前,我们应该 ...

  6. Android 给app加入百度地图

    1.获取sha1值 (1)win+R进入cmd窗口 (2)输入以下代码 C:\SoftApplication\javajdk\jdk1.8.0_151\bin>keytool -list -v ...

  7. 现在创业做App,先做 Android 还是 iOS?

    随着互联网+的高速发展,现在创业大部分都是在布局移动端,初期往往摆在面前最大的难题是,如何分配有限的成本,在最快的速度内占领市场?这个大难题会影响创始人在团队和产品建设方方面面的决定.缩小至移动App ...

  8. android表白app

    一.前言 马上就要520和521了,是不是还有像我一样的单身狗啊.我就知道有,所以这两天简单写了这个小程序(其实是替别人写的),虽然我并不会用去骗女孩子(因为最近太忙了,实习完之后要搞毕设,要搞论文啊 ...

  9. Cordova 打包 Android release app 过程详解

    Cordova 打包 Android release app 过程详解 时间 -- :: SegmentFault 原文 https://segmentfault.com/a/119000000517 ...

随机推荐

  1. 去除inline-block间距

    去除inline-block间距 通过display:inline-block设置元素为水平时,相邻元素之间会有几px的间距: html: <ul class="list"& ...

  2. Spring Data Redis入门示例:基于RedisTemplate (三)

    使用底层API:RedisConnection操作Redis,需要对数据进行手动转换(String <---->byte),需要进行多数重复性工作,效率低下:org.springframe ...

  3. HttpClient 学习整理 (转)

    source:http://www.blogjava.net/Alpha/archive/2007/01/22/95216.html HttpClient 是我最近想研究的东西,以前想过的一些应用没能 ...

  4. oracle将一个字段拆分成多个值 (regexp_substr函数)

    select regexp_substr(p.attributename, '[^,]+',1,level) c1from tablename p connect by level <= len ...

  5. C++命名空间、标准库(std,全局命名空间)

    背景 别人遇到的问题: C++ 全局变量不明确与 using namespace std 冲突 我遇到的问题与他相似,函数调用冲突 using namespace std; class compare ...

  6. [Python3网络爬虫开发实战] 1.9.3-Scrapyd-Client的安装

    在将Scrapy代码部署到远程Scrapyd的时候,第一步就是要将代码打包为EGG文件,其次需要将EGG文件上传到远程主机.这个过程如果用程序来实现,也是完全可以的,但是我们并不需要做这些工作,因为S ...

  7. 又是latch: cache buffers chains惹得祸

    前言 一大早,客户给我打电话说: xx,应用很慢,查询数据总是超时,让我看看... 根据多年DBA经验,首当其冲的肯定是去查询数据库在这段时间都在干嘛. 分析 导出awr报告分析 1). 数据库在此时 ...

  8. odoo 权限配置讲解

    今天来讲解一下odoo权限配置的简单讲解,配合公司开发的权限模块的使用,进行odoo权限配置的说明 BaseSecurityExtend 2.0模块 这是公司自主开发的一款针对odoo菜单级别进行可视 ...

  9. Matlab学习笔记(三)

    二.MATLAB基础知识 (四)数组 MATLAB总是把数组看作存储和运算的基本单位,标量数据也被看作是(1×1)的数组 一维数组的创建 创建一维数组的几种方法:(e_two_14.m) 直接输入法: ...

  10. Quartz Spring分布式集群搭建Demo

    注:关于单节点的Quartz使用在这里不做详细介绍,直接进阶为分布式集群版的 1.准备工作: 使用环境Spring4.3.5,Quartz2.2.3,持久化框架JDBCTemplate pom文件如下 ...