首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Pebble.js中的自定义Vibe序列?

Pebble.js中的自定义Vibe序列?
EN

Stack Overflow用户
提问于 2014-12-30 23:00:41
回答 1查看 249关注 0票数 1

我已经用Pebble.js开发了一个旨在获取一个包含整数的远程文件,并发出许多“短”的Vibe事件。

问题是:如果一个人目前正在进行中,就不会发生虚拟事件。我求助于这样的方法来尝试将它们分散开来(在这里,要发出BUMP_COUNT_INT ==数量的Vibes ):

代码语言:javascript
复制
    for (var i = 0; i < BUMP_COUNT_INT; i++) {
      setTimeout(function(){ 
        Vibe.vibrate('short'); 
    }, 900*i);

然而,即使900‘t(* Vibes)也是不一致的。有时它们之间存在或多或少的空间,有时它们合并(导致比预期更少的振动)。

看来,C能够定制序列。

我希望有人找到了一个更干净的解决方案,或者用Pebble.js实现这一目标的更稳定的方法.?

如果我想继续使用Pebble.js,我是否应该接受这样一个事实:如果我想继续使用,我就必须进一步扩展Vibes吗?

你怎么做?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-04 11:38:41

自定义模式在Pebble.js中不可用,但您可以轻松地在Pebble.js中添加一种新的“类型”,并将其作为自定义模式在Pebble.js的C端实现。

这些步骤将是:

  1. 在Pebble.js上克隆GitHub项目并获得本地副本。您需要下载并安装Pebble在您的计算机上本地编译它(这在CloudPebble上不起作用)。
  2. 声明一种新类型的vibe命令src/js/ui/simply-pebble.js ( Pebble.js JavaScript库): 变量vibeTypes = 'short','long','double',‘定制’;var VibeType = makeArrayType(vibeTypes);
  3. src/simply/simply_msg.c中创建新类型的Vibe 枚举VibeType { VibeShort = 0,VibeLong = 1,VibeDouble = 2,VibeCustom = 3,};
  4. 然后扩展Vibe命令处理程序,以在src/simply/simply_msg.c中支持这种新类型的vibe。 静态无效handle_vibe_packet(简单*简单,数据包*数据){ VibePacket *packet = (VibePacket*)数据;交换机(包->类型){ case VibeShort: vibes_short_pulse();Packet;case VibeLong: vibes_break_pulse();vibes_break_pulse();case VibeDouble: vibes_double_pulse();case VibeCustom: static uint32_t const segments[] ={ 200,100,400 };VibePattern pat ={ .durations =段,.num_segments =ARRAY_LENGTH(段),};vibes_enqueue_custom_pattern(pat);break;}}

一个更好的解决方案是建议一个补丁,这样任何定制的模式都可以在JavaScript端设计并发送到手表上。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27713816

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档