最近刷酷安发现一个很酷的软件:Dora.js
官方介绍
Dora.js 是 Android 上的一个内容型编程平台,提供了强大且简单的一套扩展框架,让你可以轻松写出诸如提供视频、图片、漫画、音乐、图书、文章等的扩展,打造属于自己的内容中心。
简单来说,你可以把它当做一个可以安装许多扩展的 App。
如果你想学习 JavaScript,Dora.js 可以给你提供非常大的帮助。
Dora.js 使用 V8 作为脚本引擎,提供完善的 Node.js 运行时:
- 支持 npm 依赖包
- 虚拟文件路径让文件访问更轻松、更安全
Dora.js 包含一个强大的代码编辑器:
- 支持代码高亮,多种字体、配色可选
- 支持智能补全、签名提示
- 提供 VSCode 插件
- 提供多种快捷工具使手机上编程成为一件容易事
- 取经自 “纯纯写作” 的优秀编辑器体验
注意:Dora.js 目前还处于不稳定阶段,很多能力还很简陋,你在使用过程中还有几大概率出现闪退现象。
下载地址:https://www.coolapk.com/apk/com.linroid.dora
如何使用
虽然介绍里重点突出的是作为编程平台的特色,但作为普通用户,我们也可以把玩其中许多优秀的扩展。
比如作者(@linroid
)提供的示例扩展之一,Bing Wallpaper, 可以查看最近 8 天的必应壁纸,并支持一键设置壁纸或保存/分享/收藏。
还有许多大佬发布的,例如“场库”,“期刊杂志”,“斗鱼直播”,“B 站 UP 主稿件拉取”,“花瓣”等各种花式玩法都可以体验一下。
当然,为了入坑体验,我(@youthlin
)也制作了一个 “RSS 聚合阅读”(npm 包名dorajs-rss
)的工具(第一版抄袭了已有的 “RSS 阅读器”, npm 包名 dorajs-wlor-rssreader
, 后续迭代版本已经不像了),欢迎试用~
一些示例的 feed 源:
- 本站 https://youthlin.com/feed
- 知乎每日精选 https://www.zhihu.com/rss
- GitHub 全球实时动态 https://github.com/timeline
- 阮一峰的网络日志 http://www.ruanyifeng.com/blog/atom.xml
- 少数派 https://sspai.com/feed
- 小众软件 https://www.appinn.com/feed/
- 极客公园 http://www.geekpark.net/rss
如何安装扩展
作为一个平台,在 Dora.js 上可以安装来自 npm 仓库的扩展,也可以从文件安装 .dora 文件(实质是 .tar.gz 的 npm 包)。
至于安装 npm 仓库里的包,又有多种途径:
- 订阅扩展作者:下载后在第二个 Tab 页,即订阅页面,选择右上角管理,可以输入 npm 用户名以查看、安装或订阅该用户发布的所有扩展
- 点击右上角菜单,直接输入 npm 包名安装
- 使用“扩展检索”这个扩展安装,至于“扩展检索”可以通过第一(用户名
@1024.js
)或第二种(npm 包名dorajs-index
)方式安装
如何制作扩展
在首页点击加号,根据提示可以从自带模版创建一个最简单的 Hello World 的扩展。
创建之后还可以在 Dora.js 自带的编辑器上进行开发。不过如果是正经开发的话,都知道用手机键盘打字是一种怎样痛苦的体验,所以 Dora.js 还有一款 VS Code 插件(在 VS Code 扩展商店里搜索 Dora.js 就行),可以在 VS Code 上开发,然后随时推送到手机上调试。
Dora.js 的 文档 也还算齐全,可以查到提供的所有 API 的用法,作者还提供了一个示例扩展(包名 @dora.js/api-demo
)可以体验所有 API.
支持的组件有 list 列表,video 视频,audio 音频,article 文章,image 图片,webview 浏览器,topTab 顶部分栏,bottomTab 底部分栏,drawer 汉堡菜单分栏,分栏嵌套。
支持的全局函数有界面相关 $ui, 输入相关 $input, 路由相关 $router, 配置相关 $prefs, 存储相关 $storage 等基本 API. 至于更强大的数据库操作能力暂时还没有提供,作者说后面会支持上。
最后
发现 npm 发布一个包简直太简单了,只需要在 npmjs.com 注册一个用户,然后在命令行用 npm adduser
登录后,就可以使用 npm publish
发布了。(难怪 npm 包那么多 )
- 项目首页:https://dorajs.com/
- 非官方 QQ 群:882020404 (里面有很多开发扩展的大佬)
声明
- 本作品采用署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。除非特别注明, 霖博客文章均为原创。
- 转载请保留本文(《Dora.js – Android 上的内容型编程平台,学习 JavaScript 开发!》)链接地址: https://youthlin.com/?p=1721
- 订阅本站:https://youthlin.com/feed/