这是一篇发布在Android官方开发者社区博客,15年年初的时候就看到了这篇文章,直到现在才有时间把它翻译下来。

这是一篇如何在Android Wear上面如何正确地展示二维码的文章,里面有许多的经验和教训可以记取,原文地址请点击这里。

原文翻译内容如下 :

Android Wear和二维码:使用用户通过快速轨道的方法

争匆匆上火车、进音乐会或者简单地订个咖啡,我们都看到过用户或者我们自己翻找钱包或者移动应用来努力找到正确地登机通道、票据或者会员卡。有了Android Wear和移动应用上的几行代码,这都将如魔法般工作。

Android支持库的新特性

自从Android Wear平台的首次发布开始(什么时候二维码图片能够添加到通知上面),开发人员问了他们想要看到改进的两种场景:

  • 圆形展示,开发人员很难了解二维码是否完整且未剪裁地展示。
  • 为了保护电池,Android Wear屏幕在无活动5秒钟之后关闭。然而,对用户而言,很难保证当他们到达队伍前面时,二维码是否依然展示在手腕上。

在最新的支付库里面,我们在WearableExtender添加了两个额外的方法,从而给予了开发人员更多的权限来控制如何在通知里面展示背景图片。这些新的API能够在大量场景中使用,本博中我们只专注于二维码的使用示例:

有了这个新方法,开发人员能够确保完整的二维码总是可见的。

Wrong: 
setHintAvoidBackgroundClipping (false)
// this is the Default

Right: 
setHintAvoidBackgroundClipping (true)

   

这个新方法使得开发人员能够设置超时,从而满足他们的特殊用例。

最佳设计实践

我们试验了大量的二维码自定义选项,下面是我们学到的一些教训:

一定要做

  • 一定要用你的装备测试,在部署之前,用你的读码器测试,确保展示在可穿戴设备上的二维码在你的装备上正常运行。
  • 一定要使用黑白二色的二维码,这将保证最大程度的匹配,而且对读码器而言更容易读取信息。
  • 一定要只在文本通知中展示核心信息,记得“少即是多”。对可穿戴设备,可掠览性很重要。
  • 一定要在圆形和方形表上都要测试,可在通知上面展示的文本数量尤其依赖于外形因素(方形和圆形)而发生变化。
  • 一定要有品牌图标,Android Wear流的主通知中,开发人员能够通过使用setLargeIcon设置颜色图标,从而标识通知。
  • 一定要使用背景来传递额外信息,为了获取到更好的结果,考虑通过setBackground给上下文设置敏感的背景,例如火车目的地或者体育场的图片或者照片。
  • 一定要使用400X400或者更大分辨率的二维码,根据其他的背景图片,二维码图片推荐的最小像素是400X400。

一定不要做

  • 一定不要推广二维码,Android Wear上面屏幕大小是有限的,为了推广而使用一些屏幕也许导致二维码不能正确地工作。
  • 一定不要在通知的文本上面使用除了灰色或者默认主题颜色之外其他任何颜色,尽管Android Wear通知支付基本的文本格式化操作,如设置文本颜色,这个应该在将颜色集修改成默认或者灰色时使用。理由是Android 4.x的Holo主题有默认的黑色背景,而包括Wear的Android 5.0+的Material Design主题有白色背景。这使得通知里面的文本颜色很难同时起到相同的作用。Bold和Italic是很好的格式化选择。

Android Wear是为了忙碌的人们而生的

在Android Wear上使用二维码是一件非常愉快的体验。用户需要的信息在正确的时候正确的地点恰好展示在手腕上。有了新的API,你现在能够比之前打开更多的门,并且能够给予忙碌的人们更容易地查看的时间。

示例代码从此处下载

Android Wear和二维码的更多相关文章

  1. Android仿微信二维码扫描

    转载:http://blog.csdn.net/xiaanming/article/details/10163203 了解二维码这个东西还是从微信中,当时微信推出二维码扫描功能,自己感觉挺新颖的,从一 ...

  2. Android进阶笔记06:Android 实现扫描二维码实现网页登录

    一. 扫描二维码登录的实现机制: 详细流程图: (1)PC端打开网页(显示出二维码),这时候会保存对应的randnumber(比如:12345678). (2)Android客户端扫码登录,Andro ...

  3. android利用zbar二维码扫描-(解决中文乱码及扫描区域定义)

    写在最前(这是对上一篇博文的问题做的更新[android利用zbar二维码扫描]) project下载   zbarLib编译project  project下载0积分 bug 在2.3的系统中Hol ...

  4. Android快速实现二维码扫描--Zbar

    Android中二维码扫描的最常用库是zxing和zbar,上一篇<Android快速实现二维码扫描–Zxing>介绍了Zxing.这次说Zbar,Zbar速度极快,我就比较常用,项目地址 ...

  5. Android开发 QRCode二维码开发第三方框架

    前言 Android开发里二维码开发经常用到,这里简单的介绍下Android开发里的二维码. 最广泛使用的二维码库zxing zxing是最广泛的二维码库各个平台都可以适用它,但是Android平台使 ...

  6. Android zxing 解析二维码,生成二维码极简demo

    zxing 官方的代码很多,看起来很费劲,此demo只抽取了有用的部分,实现了相机预览解码,解析本地二维码,生成二维码三个功能. 简化后的结构如下: 废话少说直接上代码: BaseDecodeHand ...

  7. android扫描网页二维码进行网页登录

    转载请标明出处: http://www.cnblogs.com/dingxiansen/: 本文出自:丁先森-博客园 周六和朋友去网吧开黑,开机打开TGP,朋友那边开始输入账号密码,我看了他一眼low ...

  8. Android快速实现二维码扫描--Zxing

    Android中二维码扫描的最常用库是zxing和zbar,zxing项目地址为https://github.com/zxing/zxing,目前还有多个人在维护.zbar主要用C来写的,对速度有要求 ...

  9. Android开发——Android中的二维码生成与扫描

    0. 前言 今天这篇文章主要描述二维码的生成与扫描,使用目前流行的Zxing,为什么要讲二维码,因为二维码太普遍了,随便一个Android APP都会有二维码扫描.本篇旨在帮助有需求的同学快速完成二维 ...

随机推荐

  1. Python 新浪微博中提取最常见转载的微博转载了几次,username,内容

    CODE: #!/usr/bin/python # -*- coding: utf-8 -*- ''' Created on 2014-7-4 @author: guaguastd @name: fi ...

  2. JavaScript阻止事件冒泡(兼容IE、Chrome、FF)

    这里仅仅是一个简单代码demo,因为时间问题并未做深入研究,因为今天做项目时要用到阻止事件冒泡的内容,找了好多才找到一个可以使用的,特记录之. <!DOCTYPE HTML> <ht ...

  3. HDU 3415 Max Sum of Max-K-sub-sequence 最长K子段和

    链接:http://acm.hdu.edu.cn/showproblem.php?pid=3415 意甲冠军:环.要找出当中9长度小于等于K的和最大的子段. 思路:不能採用最暴力的枚举.题目的数据量是 ...

  4. BST(Binary Search Tree)

    原文链接:http://blog.csdn.net/jarily/article/details/8679280 /****************************************** ...

  5. C语言移位运算符

    位移位运算符是将数据看成二进制数,对其进行向左或向右移动若干位的运算.位移位运算符分为左移和右移两种,均为双目运算符.第一运算对象是移位对象,第二个运算对象是所移的二进制位数. 位移位运算符的运算对象 ...

  6. 多校训练赛2 ZCC loves cards

    ZCC loves cards Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) ...

  7. crawler_phantomjs_windows_linux下demo

    1. phantomjs介绍 基于Javascript驱动的命令行webkit引擎,轻量级,安装简单,开发快速,渲染速度较快,无界面的webkit浏览器. phontomjs跟一般浏览器一样可以加载网 ...

  8. 西门子PLC学习笔记8-(计时器)

    计时器port这包括:信号输入.时间.复位信号.出口.[计时器剩余时间(BI二进制表示法.BCD码表示)其输出被存储MW] 定时器包括::S_PULSE(脉冲定时器).S_PEXT(延时脉冲定时器). ...

  9. STL在迭代的过程,删除指定的元素

    直接在Code.在 Picture #include <iostream> #include <list> using namespace std; // STL在迭代的过程中 ...

  10. Linux中iptables设置详细

    无论如何,iptables是一个需要特别谨慎设置的东西,万一服务器不在你身边,而你贸然设置导致无法SSH,那就等着被老板骂吧,呵呵... 一下内容是为了防止这种情况发生而写的,当然很初级,不过一般服务 ...