需要是一个移动端框架,我用这个框架开发出一个 app 后,想提供插件接口,让其他人可以扩展这个 app 界面与功能。
我个人用过 flutter 开发应用,但想不出好方法提供插件接口。 个人更倾向于插件用前端的技术栈来开发,像桌面端的 electron 。 我看移动端的 obsidian 是能支持插件的,有空看下用的什么方式实现的。
不知道大家有什么好的推荐吗?
1
lmoon 2022-08-03 15:13:02 +08:00 via Android
https://dorajs.com/ 你看看是不是这个 (
|
2
wobuhuicode 2022-08-03 15:16:47 +08:00
不就是小程序嘛,接入一个 webview ,开放几个 native 接口。
|
3
kongkongye OP @wobuhuicode 不是小程序,是类似 vscode 跟 vscode 扩展之间的关系
|
4
israinbow 2022-08-03 19:29:14 +08:00 via Android
参考那些聚合类应用的实现方案?比如这个:
https://github.com/tachiyomiorg/tachiyomi |
5
jarven123 2022-08-03 20:15:49 +08:00
把你想提供的能力暴露出去
|
6
ysc3839 2022-08-03 20:22:14 +08:00 via Android
嵌入 JavaScript 引擎吧。
不过 JS 是个沙盒语言,运行在其中的代码没法访问系统接口,只有你主动暴露了接口才能使用。所以最好说一下希望插件有什么能力,如果需要 Node.js 那样的功能,会比较麻烦。 |
7
musi 2022-08-03 21:12:16 +08:00 1
提供个思路:
可以用 flutter 的 webview ,这样就可以运行前端技术栈了,然后你可以用 webview 注入一些宿主方法进去,或者实现宿主和 webview 内部的通信,然后你把通信方法封装成 sdk ,供其他人调用就行了。 Obsidian 类似,不过 Electron 本身就是一个浏览器,可以直接用 iframe 的 |
8
placeholder 2022-08-04 07:23:28 +08:00
还不如你直接原生开发然后开源出来,让想二次开发的 fork 然后提 PR
|