问题标签 [monkeyc]

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 回答
1428 浏览

garmin - 使用 setText 时连接 IQ 意外类型错误

按下菜单项时,我想设置标签的文本,但是出现错误:“调用 <symbol> 失败”和“意外类型错误”。

在我的菜单代表中,我有:

setLongestThrowFunction 位于我的 View 类中,如下所示:

当我通过一个字符串时,为什么我会得到一个意外的类型错误是没有意义的。有人看到我看不到的东西吗?谢谢。

0 投票
2 回答
166 浏览

connectiq - MonkeyC 无法识别 const 关键字

我正在 Eclipse 中的 Garmin 中的 monkeyc (ConnectIq) 中构建项目,我想在我的代码中使用const而不是var,但编译器似乎const无法识别该关键字。有什么问题?

我的代码是:

编译器抱怨这样:

如果我更改constvar,一切顺利。哪里可能有问题?从 Garmin 文档 MonkeyC 应该​​有const关键字。

0 投票
1 回答
1423 浏览

garmin - 如何在 Monkey C 中将米转换为厘米?

严重的新手问题,但我似乎无法在任何地方找到答案!

我正在尝试在 Garmin 设备的应用程序中将我的身高从厘米转换为米。这是用 Monkey C 编写的(据我了解,与 Java 和 C++ 非常相似)。

这是我目前的做法:

我的身高是 175,正如你所料,这给了我 175.00 的结果

我似乎找不到任何资源来告诉我如何将小数点移到左边。任何帮助将非常感激。

这是有关在 Monkey C 中格式化的文档:https ://developer.garmin.com/downloads/connect-iq/monkey-c/doc/Toybox/Lang/Number.html#format-instance_method

任何关于格式化数字的解释都会很棒。我也试图截断一个数字,例如从 1234567 到 1234。因此,任何有关这方面的信息也会很棒。

提前致谢!

0 投票
1 回答
469 浏览

connectiq - 更改历史列表中自定义应用程序记录活动的图标

我为我的 Garmin Forerunner 手表制作了自己的 Connect IQ 应用程序。我已将 LauncherIcon 更改为我自己的图像,而不是默认的 IQ 图标。

我的应用程序使用 ActivityRecording,因此可以将活动保存到历史记录中的活动列表中。但是,在此列表中,活动的图标只是“IQ”。

是否可以将其更改为自定义图像?否则,我将无法区分自定义应用程序中的活动。

0 投票
1 回答
169 浏览

garmin - BLE 传输功能中 Garmin Vivoactive HR 的内存泄漏

我正在为 Garmin Vivoactive HR 开发一个手表应用程序,它将定期向手机发送数据(使用 ConnectIQ SDK V2.3.4)。

可用内存随着 Communications.transmit(...) 函数的重复调用而下降,直到应用程序因内存不足而崩溃。

我已经测试了我的应用程序,注释掉了传输()调用并且问题没有发生,所以我认为它要么是传输()函数中的内存泄漏,要么是(据我所知)无证需要在传输()调用之后做一些事情来释放内存。

我的测试代码的相关部分在这里:

运行时在手表屏幕上显示可用内存的完整测试应用程序在这里:https ://github.com/OpenSeizureDetector/Garmin_SD/tree/master/MemTest

我只能在 Vivoactive HR 设备上进行测试,因为我无法让 garmin 模拟器的 linux 版本正常工作。看起来它类似于 Garmin 明显修复的早期问题(https://forums.garmin.com/forum/developers/connect-iq/100499-periodic-ble-transmit-causes-memory-leak),但我似乎无法登录 Garmin 论坛在那里报告。

有谁知道我是否做错了什么,应该要求释放内存,还是这看起来像 SDK 的 Communications.transmit() 函数中的错误?

0 投票
1 回答
797 浏览

progress-bar - 连接 IQ 表盘自带形状的电池状态栏

我正在尝试在我的 Garmin Wacht Face 上使用我自己的风格(见图)来显示电池状态栏。

电池状态栏

目前我只使用 3 个可绘制对象(100% 满、50% 和 0% 空)。是否有可能或其他想法来填充我的 0% 形状使用 SystemStatus.battery

0 投票
1 回答
425 浏览

garmin - Garmin 设备中包含应用程序的文件夹位于何处?

我正在寻找包含 Garmin Forerunner 设备中已安装应用程序的文件夹。

我很想知道一些应用程序是如何用猴子 c 语言编写的,但是,将设备连接到我的笔记本电脑后,我在专用的应用程序文件夹中没有找到任何东西。

如何查看应用程序源代码???

非常感谢您的任何回答。

PS 在 Garmin sdk 中,我阅读了一些示例,但它们不是我想要的

0 投票
1 回答
70 浏览

eclipse - 当我从 Eclipse 运行我的 MonkeyC 程序时,为什么我的代码更改没有编译或显示?

我正在使用 Eclipse、ConnectIQ 插件和 MonkeyC 为 Garmin 手表编写应用程序。我可以在模拟器上运行几个示例应用程序,但大多数情况下,当我点击“运行”时,我的编辑不会部署。

IDE 信息:适用于 Java 开发人员的 Eclipse IDE 版本:2018-12 (4.10.0) 内部版本号:20181214-0600

在 Garmin SDK 的 ActivityTrackerApp 中,默认 UI 布局在文件 ActivityTrackerApp.mc 中。我正在编辑的行是:

var stepsPercent = info.steps.toFloat() / info.stepGoal; drawBar(dc, "步数", dc.getHeight() / 4, stepsPercent, Graphics.COLOR_GREEN);

我正在编辑这两行中的字符串“Steps”,然后点击“Run”。

我希望看到模拟器中的标签“Steps”更改为我输入的任何新字符串,但标签看起来没有变化。我尝试重新启动模拟器以及杀死模拟器中的应用程序。我还尝试了几次清理和重建项目,没有任何变化。我没有看到任何编译器错误,我也不期待任何错误。获得有效的代码更改以编译和部署需要什么?

0 投票
1 回答
228 浏览

bash - 在openjdk apline docker容器中找不到garmin connectciq-sdk ommand monkeyc

我正在运行 openjdk:13-alpine docker 容器并将 garmin connectiq-sdk 文件安装到容器中。尝试运行 monkeyc 命令失败并显示“未找到”。

在容器外,命令按预期工作

0 投票
0 回答
32 浏览

garmin - Connect IQ 小部件能否获取当前播放音频的详细信息

无论用户正在使用何种服务(Spotify、亚马逊音乐),是否可以获得当前在 Garmin 智能手表上播放的音频的歌曲标题和专辑等详细信息?