内容简介:LCUI 2.1.0 发布了。LCUI 是一个用 C 语言编写的图形界面开发库,可用于构建简单的桌面应用程序。 更新概要 本次更新共计支出 90 美元用于悬赏,合并了 4 个拉取请求,参与的贡献者有:vbalyasnyy、jduo。此外,L...
LCUI 2.1.0 发布了。LCUI 是一个用 C 语言编写的图形界面开发库,可用于构建简单的桌面应用程序。
更新概要
本次更新共计支出 90 美元用于悬赏,合并了 4 个拉取请求,参与的贡献者有:vbalyasnyy、jduo。此外,LCUI 在 OpenCollective 上新增了一位赞助者,共计获得 50 美元捐款。
问题修复
- wasm-ld: error: duplicate symbol: self (2b0424c)
- display: rect_array 未被释放 (224c433)
- gui: 部件销毁后未标记无效区域 (8e1f136)
- gui: TextView_SetTextW() 段错误 (#195) (a10df88)
- ime: 设置输入框文本光标时段错误 (0b644e1)
- linux: 在窗口处于最小尺寸时渲染会出现段错误 (#200) (#201) (fa23f89)
- mainloop: 将事件触发器从 OpenMP 并行循环中移出以解决主线程阻塞问题 (#204) (#205) (6978f46)
新功能
Android 支持计划
作者已确认将 Android 支持列入开发计划,但由于作者并不是 Android 开发者,也不打算学习 Android 开发,所以,这项工作将由开源社区中的 Android 开发者完成,当然这并不是无偿的,完成这项工作的开发者将会获得一定数额的奖金。
之所以选择以悬赏的方式吸引贡献者,是因为在此前的几次版本更新中,有不少开发工作是以悬赏任务的形式交给其他开发者完成的,效果还不错,这也足以证明开源社区中有很多潜在的贡献者,他们有能力为开源项目做贡献,只不过是缺少足以驱使他行动的理由,而悬赏则是满足理由的最为简单直接的一种方式。
LCUI 在此之前一直是个人项目,可能是因为大家考虑到作者时间和精力有限,除了在 OSCHINA 评论区发点评论外,很少有除此以外的有实际意义的互动,例如:提出功能需求、改进意见、贡献代码。这种状态不利于开源项目的长期发展,因此,作者想借此机会尝试推动 LCUI 转变为由社区驱动的项目,让更多人能够推动项目发展,而不只是作者一个人。
接下来以问答的形式进一步说明。
为什么决定添加 Android 支持?
相信有些人也有相似的体会,安卓的某些应用占用存储空间和内存很大,明明它的界面很简单,性能却非常差,用起来着实让人火大,喷它也没意义,所以,为搞清楚原因,作者想基于 LCUI 写个 Android 应用来体验实际效果,以便确认是 Android 开发者技术水平的问题,还是他们用的 UI 框架有问题,又或者只是因为硬件配置低。
添加 Android 支持有什么意义?
- 拓宽 LCUI 的受众范围
- 让作者可以写 Android 应用
- 给 C 开发者多一种消遣方式,无聊时可以用 C 写个 Android 应用来打发时间
- 给 Android 开发者多一种选择,虽不能正式用在生产应用中,但可以用来研究和折腾
悬赏奖金有多少?
估计需要 1000 美元,除去 10% 的平台服务费和转账手续费,实际能获得 900 美元,奖金大部分由赞助者提供,也就是说实际奖金有可能超过 1000 美元,也可能低于 50 美元,如果你能完成这项工作但觉得奖金少的话,可以利用自己的知名度、人脉以及各种途径去推广,吸引更多的人赞助这项工作,毕竟能够拉到赞助也是一种能力。
那你这不就是炒作吗?
具体得看实际情况,如果有开发者要求的赏金低于 500 美元的话,作者会考虑直接全额支付赏金,当然,如果都要求 1000 美元以上那就只能等作者资金充足的时候再考虑了。
服务费这么高,为什么不考虑国内的赞助平台?
因为国外的赞助平台有很多流行开源项目在使用,积累的开发者也很多,在上面发布悬赏更容易推广吸引贡献者。而国内的话,某知名开源代码托管平台对这方面的支持欠缺,只有简单的打赏功能,虽然近期有举办过悬赏的活动,但活动奖金固定且活动只持续一小段时间,无法满足现在这种需求。至于其它类似平台,作者不了解。
如果我想负责这项工作,需要做什么准备?
先在 issuehunt.io 上提交你的期望奖金,然后在 issue#210 页面中发评论表示愿意负责这项工作,等一段时间后由作者决定由谁负责。如果你有相关问题需要咨询,也可以写在评论中。
如何为这项工作赞助资金?
在 issuehunt.io 上追加奖金即可,如果你想为 LCUI 的未来开发工作提供资金赞助,也可以在 OpenCollective 上进行赞助。
如果这项工作一直没人赞助怎么办?
现在的主要目的是找到有意向做这项工作的开发者,了解到他们期望的奖金数额,至于赞助的事情要等之后再考虑。
做这项工作能获得什么好处?
- 获得一定奖金
- 积累 C 和 Android 开发经验
- 向开源社区的开发者展示你的技术水平
- 你的名字和链接将被展示在 README 文档和官网首页中
从上述的几个好处来看,这项工作最适合时间充足、有一定编程能力但需要积累实战经验的计算机专业学生,能让他们在锻炼编程能力的同时顺便赚点零花钱。
这项工作的内容是什么?
工作清单如下:
- 驱动
- 视频驱动
- 触屏驱动
- 键盘驱动
- 主循环(UI 线程)
- 接口
- DPI 获取接口
- 屏幕分辨率获取接口
- 系统信息获取接口
- …
- 文档
- 技术文档,介绍安卓端支持技术实现方案
- 开发文档,介绍如何基于 LCUI 开发 Android 应用,以及如何调试
- 示例
- 添加 Android 示例项目,移植现有的 helloworld 示例程序即可
- CI 服务
- 编译 Android 示例项目为 apk,并将其上传到 GitHub Actions 制品列表 (Artifacts) 以供下载
- 在 Android 模拟器安装运行 apk,并将截图发送到 commit 页面的评论中,或 GitHub Actions 制品列表中
- 其它
- 代码结构合理,命名规范,易于阅读和维护,至少能让作者看懂
关于 Android 端的驱动,可以参考 SDL 的源码:
https://github.com/SDL-mirror/SDL/tree/master/src/video/android
这点程度的 Android 支持还不够,后续还有其它计划吗?
先等这项工作完成后再考虑,届时将会规划项目发展路线图。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- PHP 8 中确认支持 JIT
- Fuchsia最新消息,确认支持Android应用
- 谷歌 Fuchsia 开源操作系统确认支持运行 Android App
- 2.7 交易确认
- RabbitMQ消息确认机制+延时队列
- 华为确认存在备用操作系统
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
HTTP/2基础教程
Stephen Ludin、Javier Garza / 罗正龙、郑维智 / 人民邮电出版社 / 2018-1 / 49.00元
让网站和应用更快速、更简洁、更稳健,从而有效提升用户体验,这无疑是众多开发者梦寐以求的。然而互联网发展日新月异,HTTP/1.1协议已经难以满足现今的需求。在众多Web性能提升方案中,HTTP/2值得尝试。 本书是HTTP/2实用指南,介绍了HTTP/2的设计初衷和新特性,以及如何才能充分利用这些特性来打造高性能网站及应用。作者用定量分析方法,对比了不同网络环境下及不同浏览器上HTTP/1.......一起来看看 《HTTP/2基础教程》 这本书的介绍吧!