问题标签 [pebble-watch]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
596 浏览

java - 如何在 pebble 中正确处理 APP_MSG_BUSY?

我正在向我的 Pebble 发送大量数据,但其中一些数据不断丢失。我意识到这部分是由于缓冲区大小不足以PebbleDictionary我发送它,所以我把它分成多个小块。但是,这会带来APP_MSG_BUSY错误的问题。

这可能会发生,因为我不是在等待来自卵石的 ack/nack,而是只是背靠背地发送数据。因此,我尝试添加 ack/nack 处理程序以及队列,但由于我的sendMessage()函数在等待 ack/nack 处理程序时阻塞了主 UI 线程,我无法让它工作。

因此,我的问题是处理这个特定实例的最佳方法是什么APP_MSG_BUSY。我不希望我发送的任何数据被丢弃,这意味着要么在发送下一条数据之前等待确认,要么在收到 nack 后重新发送。如果可能的话,我想避免线程,但我一直无法想出一个不涉及线程的合理解决方案。

编辑:据我所知,卵石代码中没有错误。它将使用正确的密钥请求数据,并且会(自动)确认 android 应用程序发送的任何消息。

如果您愿意,我在下面发布了我的代码:

当前代码(android应用程序的相关部分):

布尔字典:

这会产生以下错误:

0 投票
1 回答
82 浏览

c - 数组的所有元素都被覆盖而不是只有一个?

我的卵石手表内运行了一些 C 代码。它每次都以键值对的形式接收一些数据。它正在接收 5 条数据,每条数据都有正确的键和值,如下所示:

鹅卵石一次接收其中一对,每次它执行以下函数时都会调用(上一行SimpleMenuItem chats[5];:)

然后将以下内容输出到卵石日志(这是我认为正确的):

所以,虽然一切似乎都是正确的(对我来说),但还是有意想不到的行为。不是每个元素都具有不同值chats的数组,而是SimpleMenuItem相同的数据(即最新的)覆盖所有值,即使它(可能)应该只覆盖指定的元素。因此,在发送 5 条数据结束时,整个chats数组最终被填充SimpleMenuItem为 value 40。我觉得这更像是一个 C 问题,而不是一个卵石问题——但如果有人能解决这个问题,我将不胜感激。

谢谢!

0 投票
2 回答
1080 浏览

c - 将 char 数组转换为字符串 [和 Pebble]

我有一个 char 数组,我试图将其转换为指向字符串的 char 指针。我相信这涉及获取指向 char 数组的第一个元素的指针,并在 char 数组的末尾添加一个空字符。这样做的原因是我试图将它传递给SimpleMenuItempebble 智能手表的 a ,其中.title需要获取 a char*,指向一个字符串。

虽然我已经能够填充 char 数组并且(我认为)添加了空字符并获得了指针,但我无法在我的鹅卵石上看到标题。我不确定这是一个鹅卵石问题还是我对 C 的理解的问题,但我深感它可能是前者。

卵石代码(C):

如果有人对为什么 pebble 没有显示分配给它的数据有任何建议.title,我很想听听他们的意见。

谢谢!

0 投票
1 回答
575 浏览

javascript - SimplyJS 和 xml :获取键的值

晚上好,
我的 Pebble Watch 项目已经发展,我现在使用官方外部 API 发出 HTTP 请求以获取值。我之前的问题是关于 JSON 的,现在我得到的是 XML 格式的结果。
这是我调用 API 时得到的 XML:

这就是我现在在我的 SimplyJS 脚本中的内容:


结果,完整的 XML 显示在我的 Pebble 上。但我只想获取< text >部分下的内容。
我已经尝试过使用一些“data.text”选择器,比如在 JSON 中,但是我得到了对象错误。

谢谢 !

0 投票
1 回答
368 浏览

c - 卵石上的 snprintf 错误

snprintfPebble Sdk 2.x 中的实现似乎有些奇怪

我修改了示例程序以显示点击计数器。如果我使用 str[1000] 大小,则以下代码有效

但是如果我将 str 的缓冲区大小减小到 400,应用程序就会崩溃

但同样,如果我将 str 的大小减小到 20,它不会崩溃。相反,它将 buf 截断为 7 个字符;并且在 text_layer 中根本不显示 str 。

当我执行时,非崩溃案例中的值看起来不错

对此的任何帮助表示赞赏。提前致谢。

0 投票
2 回答
210 浏览

pebble-watch - 对 pebble-js-sdk 中的蓝牙活动的许可

我知道使用 Pebble C SDK 监听蓝牙连接/断开连接活动。如何使用 javascript SDK 实现相同的功能?

谢谢

0 投票
1 回答
297 浏览

javascript - Pebble SDK/SimplyJS 不尊重 \t 字符

\t在将数据推送到我的手表(使用 SimplyJS)时,我正在尝试让我的 Pebble 手表遵守转义序列字符,这很有趣。

以下片段是我一直在使用的代码:

我目前正在观察的是,\n正在兑现,我可以看到在我的手表上,每一行数据都显示在单独的行上。但是,似乎 my\t被忽略了,而不是在我的行中插入选项卡,而是显示零空格(即'my name is' + '\t\t\t' + 'dave'显示为my name isdave)。

我还尝试仅使用 Pebble SDK 编译 Hello World 程序(从https://github.com/kristofvc/pebble-hello-world/blob/master/src/pebble_hello_world.c\t\t获取代码并添加几个要在第 11 行打印的字符串)并且还注意到 SDK支持\n字符而不是\t字符(就像我的 SimplyJS 应用程序一样)。

我的问题是:是否可以让 Pebble(通过 SDK 或 SimplyJS)以与打印到控制台时所期望的相同方式显示选项卡?我知道可能不支持 \t 字符,而不是使用\t我可以只使用空格,但这让我很好奇。

如果您需要更多信息,请告诉我。

提前致谢!

0 投票
4 回答
1280 浏览

android - Pebble 应用程序安装失败

我使用 CloudPebble 和 Simply.js 为我的 pebble 创建了一个应用程序。

从 Cloudpebble 中的 Simply.js 基础应用程序构建我创建了自己的应用程序并成功安装在 pebble 上。

今天我更改了项目的一些小设置,现在安装(成功构建后)总是失败,显示以下按摩:

安装失败,错误代码 1。请检查您的手机了解详细信息。

收到该消息后,我从 cloudpebble 安装了其他应用程序,以排除连接问题。

有人看过这个错误信息吗?

此致,

恩里克

0 投票
1 回答
2438 浏览

javascript - how to Dynamically generate JSON in a loop with Js?

I'm making a project with PebbleJS.

i'm a noob and i'm learning little by little..so after recieving a JSON from a webpage and put all the data in localStorage objects, i want to put my variables in a UI.Menu Window, which is basically a JSON variable as you can see in example below:

i tried to make a loop cycle inside but gives me error...(pseudocode)

i need to make this with no jQuery or other JS Frameworks, only pure javascript...

0 投票
1 回答
738 浏览

pebble-watch - 如何从命令行工具构建 Pebble.js 项目?

我在 CloudPebble 编辑器中创建了一个新的 Pebble.js 项目,我可以成功构建它并将其从那里推送到我的手表。当我尝试从命令行构建/安装它时出现问题,pebble build命令返回:

pebble convert-project返回命令:

现在我知道了一个事实,我在这里有一个工作的 Pebble 项目,这是 CloudPebble 编辑器创建的确切代码;那么我应该如何使用SDK呢?