发布 CodeLab Adapter 4.8
以下是自 4.7 版本以来的主要改进。 具体细节参考changelog
内核(core)更新
软件更新源(LATEST_VERSION
)可配置,方便定制后二次分发。
webUI 更新
- 添加可扩展的 webUI extension: extension_webUI_manager.py, 使开发者可以自行扩展 UI 功能。该插件开机自启。
- 使用 CodeLab 社区创作平台 替代 scratch beta
- 添加打开 host 目录功能
- 系统小图标添加打开主目录( Open Adapter Home )菜单按钮
Python 环境更新
添加 Toio 和 microbit 的 Python 驱动;
你可以直接在 Adapter Jupyterlab 中与 Toio 和 microbit 交互 !
入门案例可以看 Adapter 内置的 notebooks:
- hello_Toio.ipynb
- hello_microbit.ipynb: 在本地 Python 中与 microbit 实时交互,无需烧入,意味着可以在本地Python程序中,把microbit视为 活的 外设
插件更新
Python 插件
考虑到网络极为强大,Python 插件允许用户在 Scratch 中直接与 requests 交互(只支持表达式,形如requests.get(...), requests.post(...)
)。
由于 requests 的 API 极为漂亮(支持链式风格),你几乎可以单个表达式中干绝大多数的事情!
一些典型的用例包括:
- 两个 Adapter 之间的消息通信
- 触发 webhook
- 请求公开的网络 API
- 与自己搭建的 web server 交互
demo
requests.get("http://httpbin.org/get")
# 链式写法
requests.get("http://httpbin.org/get").text
requests.get("http://httpbin.org/get").json()
# 携带参数
requests.get("http://httpbin.org/get", params={"name": "codelab"})
# post
requests.post('http://httpbin.org/post', data = {'key':'value'})
一些奇怪的想法
- 通过与带有存储能力的 API 结合,可以构建出类似云变量这种东西
- 或者使用 json-server 临时搭建一个
OSC 插件
加速 OSC send 的速度, 从 Scratch 发出的消息,延迟在2-3毫秒。
音乐项目对实时性要求很高,为了更好地支持NeverlandBeats,我们改进了 OSC 机制,缩短消息流转的时间。
microbit radio 插件
为 microbit radio 插件加锁