本文目录 点击直达

  • Wear OS手表应用开发系列教程 点击直达
  • 本文标签
  • `路过的年轻人啊,你是要用左手点个赞呢,还是要右手点个关注呢`
  • 前言:
  • 获取按键信息:
    • 获取按键数量
    • 获取按键信息
    • 获取按键ICON
    • 获取按键标签
  • 使用按键的点击事件
  • 结语:
    • 最后我还有一句话要说:
      • 人的全部实质就是由饥饿,寒冷,委屈,损失等感觉以及哈姆莱特式的怕死感觉构成的。全部生活不外在乎这些感觉。人也许觉得生活苦恼,也许会痛恨这种生活,可是绝不会蔑视它。

Wear OS手表应用开发系列教程 点击直达

Wear OS手表应用开发教程之-创建应用
Wear OS手表应用开发教程之-创建环形滚动列表-WearableRecyclerView
Wear OS手表应用开发教程之-禁止全屏滑动返回Activity
Wear OS手表应用开发教程之-侧滑隐藏-SwipeDismissFrameLayout
Wear OS手表应用开发教程之-Activity使用微光模式-AmbientModeSupport
Wear OS手表应用开发教程之-顶部导航-WearableNavigationDrawerView
Wear OS手表应用开发教程之-底部导航-WearableActionDrawerView
Wear OS手表应用开发教程之-自定义导航栏布局-WearableDrawerView(动态控制)
Wear OS手表应用开发教程之-监听手表按键以及获取按键信息-WearableButtons
Wear OS手表应用开发教程之-手势导航-上下甩动手表事件
Wear OS手表应用开发教程之-按钮事件-旋转按钮使用和回调

本文标签

Android Studio Wear OS WearableButtons 按键信息

路过的年轻人啊,你是要用左手点个赞呢,还是要右手点个关注呢

前言:

正如Android一样,Wear OS也是谷歌创建的智能操作系统,属于Android的一个分支。假设你有过Android
Application开发经验,那给Wear OS 做应用适配将是一件非常简单的事情

WearOS手表上通常会有几个实体按键和一个滚轮按钮,我们可以通过WearableButtons来获取按键的所有信息,通过activityonKeyDown(keyCode: Int, event: KeyEvent?)回调获取按键的点击事件

获取按键信息:

WearOS有一个开放的API:WearableButtons,借助这个API,我们可以获取手表所有的按键信息和操作

获取按键数量

val count = WearableButtons.getButtonCount(this)
Log.i("手表按钮", "按钮数量${count}")

获取按键信息

WearOS最多支持让厂商定义三个按键,分别对应KeyEvent.KEYCODE_STEM_1 KeyEvent.KEYCODE_STEM_2 KeyEvent.KEYCODE_STEM_3

    val buttonInfo = WearableButtons.getButtonInfo(this, KeyEvent.KEYCODE_STEM_1)Log.i("手表按钮", "按钮1 -- ${buttonInfo}")val buttonInfo2 = WearableButtons.getButtonInfo(this, KeyEvent.KEYCODE_STEM_2)Log.i("手表按钮", "按钮2 -- ${buttonInfo2}")val buttonInfo3 = WearableButtons.getButtonInfo(this, KeyEvent.KEYCODE_STEM_3)Log.i("手表按钮", "按钮3 -- ${buttonInfo3}")

到这里我们的自定义导航栏基本完成,如果需要高级的动态操控,请参考以下代码

获取按键ICON

val buttonDrawable = WearableButtons.getButtonIcon(this,KeyEvent.KEYCODE_STEM_1)

获取按键标签

val buttonLabel = WearableButtons.getButtonLabel(this,KeyEvent.KEYCODE_STEM_1)

使用按键的点击事件

Activity中加入以下代码可以监听所有按键的点击事件

    override fun onKeyDown(keyCode: Int, event: KeyEvent?): Boolean {return when (keyCode) {KeyEvent.KEYCODE_STEM_1 -> {Log.i("手表按钮", "按下了按钮1")true}KeyEvent.KEYCODE_STEM_2 -> {Log.i("手表按钮", "按下了按钮2")true}KeyEvent.KEYCODE_STEM_3 -> {Log.i("手表按钮", "按下了按钮3")true}else -> super.onKeyDown(keyCode, event)}}

结语:

手表开发和Android开发相似度非常之高,所以强烈推荐Android开发者尝试一下这个新领域,虽然WearOS推出至今已有六个年头,但是国内厂商近两年才开始适配并开始生产,未来发展空间可期。

最后我还有一句话要说:

人的全部实质就是由饥饿,寒冷,委屈,损失等感觉以及哈姆莱特式的怕死感觉构成的。全部生活不外在乎这些感觉。人也许觉得生活苦恼,也许会痛恨这种生活,可是绝不会蔑视它。

契诃夫《契诃夫短篇小说选》

Wear OS手表应用开发教程之-监听手表按键以及获取按键信息-WearableButtons相关推荐

  1. Wear OS手表应用开发教程之-滑动隐藏布局-SwipeDismissFrameLayout

    本文目录 点击直达 Wear OS手表应用开发系列教程 点击直达 本文标签 `路过的年轻人啊,你是要用左手点个赞呢,还是要右手点个关注呢` 前言: 利弊解析: 效果展示: 使用方法: 结语: 最后我还 ...

  2. Wear OS手表应用开发教程之-创建应用

    本文目录 点击直达 Wear OS手表应用开发系列教程 点击直达 本文标签 `路过的年轻人啊,你是要用左手点个赞呢,还是要右手点个关注呢` 前言: Android Studio自动创建: 创建应用: ...

  3. Wear OS手表应用开发教程之-手腕手势-上下甩动手表事件

    本文目录 点击直达 Wear OS手表应用开发系列教程 点击直达 本文标签 `路过的年轻人啊,你是要用左手点个赞呢,还是要右手点个关注呢` 前言: 在Activity获取手腕手势回调: 在View获取 ...

  4. android手表应用开发,Wear OS手表应用开发教程之-底部导航-WearableActionDrawerView(动态控制)...

    Wear OS手表应用开发教程之-底部导航-WearableActionDrawerView(动态控制) 2020年08月14日 | 萬仟网移动技术 | 我要评论 本文目录 点击直达Wear OS手表 ...

  5. android列表项点击事件,Android 开发 tips(2):监听 Listview 列表项点击事件

    Android 开发 tips(2):监听 Listview 列表项点击事件 (这篇和上篇本来是应该一起写的,但是太过冗长,附链接:[SimpleAdapter 在 Listview 中的应用] ht ...

  6. iOS开发之网络监听(一)Reachability

    demo下载 Reachability对系统的网络状况类SCNetworkReachability进行的封装,持有全局的网络状况句柄reachabilityRef,简化了SCNetworkReacha ...

  7. 如何无缝监听安卓手机通知栏推送信息以及拒接来电

    作者:咕咚移动技术团队-乔瑟琳 一.监听安卓手机通知栏推送信息 最近在需求中需要实现监听安卓手机通知栏信息的功能,比如实时获取qq.微信.短信消息.一开始评估是件挺简单的事儿,实现 Notificat ...

  8. 监听通知栏内容,获取通知栏消息,安卓原生SDK扩展

    转载:监听通知栏内容,获取通知栏消息,安卓原生SDK扩展 <template><view>{{msg}}<view><view v-for="(it ...

  9. 海康接口开发之访客登记(一) 获取人员信息

    前言 以下基于海康ISC平台: 先说思路:通过接口获取人员信息(主要是获取访客接口需要的信息),填入到访时间.来访组织等来访信息后,通过接口抛到ISC平台. 海康接口开发之访客登记(一) 获取人员信息 ...

最新文章

  1. 神经网络RNN图解!
  2. 学长毕业日记 :本科毕业论文写成博士论文的神操作20170411
  3. python教程下载百度云盘到手机_Python教程百度云盘哪里找
  4. PostgreSQL9.6+PostGIS2.3学习笔记(一)导入shp文件
  5. 贵安新区构建大数据+物联网+智能制造产业链
  6. android 首页接口设计方案,Android开发最佳实践——1.接口设计
  7. Yii需要php版本,yii框架2.0.9版本发布了
  8. 【论文阅读】Fully Convolutional Networks for Semantic Segmentation
  9. python 批量word文档转pdf
  10. 江苏省学业水平测试信息技术软件,江苏2019年普通高中信息技术学业水平测试工作顺利结束...
  11. IC卡是什么意思?ID卡区别是?
  12. canvas——绘制图片——动图制作
  13. 微信小程序开发者工具-使用技巧(更新中~)
  14. 组队学习-free_excel-知识点和作业汇总
  15. ligerUi 格式化日期
  16. QT开发之调用其它类中的UI控件的方法
  17. 5月刊推荐:ML语言之父——罗宾·米尔纳
  18. rnss和rdss的应用_【科普】涨知识,带你认识北斗RDSS的定位方式
  19. 两个有序顺序表的合并
  20. 简单AStar寻路2D示例

热门文章

  1. 三极管相关知识点释疑(二)
  2. 【高危】Google Chrome V8 类型混淆漏洞(CVE-2023-2033)
  3. 使用 VMware 安装 CentOS(一)
  4. MySQL 关于模糊查找
  5. 2023年网络安全专家都在用的学习资料笔记,收藏这个就够了!
  6. android实现气泡聊天
  7. 摩申网络2017年6月27日游戏新闻
  8. 转:写一个块设备驱动
  9. png选项 无交错 交错_什么是交错内存?
  10. after::和before::的用法