热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

LCUI2.1.0发布,确认Android支持计划

LCUI2.1.0版本现已推出,这是一个用C语言编写的图形用户界面开发库,适合创建轻量级的桌面应用程序。此次更新包括多项修复和功能增强,并正式宣布将启动Android支持的开发计划。

LCUI 2.1.0 版本已正式发布,LCUI 是一款基于 C 语言的图形界面开发工具,旨在帮助开发者构建简洁高效的桌面应用程序。



更新亮点



本次更新中,团队共支出了 90 美元作为悬赏奖励,成功合并了 4 项拉取请求,主要贡献者包括 vbalyasnyy 和 jduo。此外,LCUI 在 OpenCollective 平台上迎来了新的赞助者,额外筹集了 50 美元的捐款。



修复的问题




  • 解决了 wasm-ld 中的重复符号错误 (2b0424c)

  • 修正了 display 模块中 rect_array 未能正确释放的问题 (224c433)

  • 修复 gui 模块在销毁组件后未更新无效区域的错误 (8e1f136)

  • 解决了 TextView_SetTextW 函数中的段错误 (#195) (a10df88)

  • 修正 ime 模块设置文本光标时引发的段错误 (0b644e1)

  • 解决了 linux 模块在窗口最小化时出现的渲染问题 (#200) (#201) (fa23f89)

  • 通过调整事件触发器的位置,解决了 mainloop 模块中的主线程阻塞问题 (#204) (#205) (6978f46)



新增功能




  • 引入了 settings 接口,增强了配置管理的功能 (#191) (#211) (#212) (1b8c6e6)



Android 支持计划



项目负责人已明确表示,将 Android 支持纳入未来的开发计划。尽管负责人本人并非 Android 开发专家,也不打算深入学习 Android 开发,但他希望通过社区的力量来实现这一目标。为此,项目将以悬赏形式招募有意愿的贡献者,成功完成任务的开发者将获得相应的奖金。



采用悬赏模式的原因在于,过去几次版本更新中,类似的激励机制已经证明了其有效性,能够有效吸引和动员社区内的潜在贡献者,促进项目的健康发展。



为了更好地推动 LCUI 项目的发展,负责人希望借助此次机会,鼓励更多开发者参与到项目的建设中,共同推动 LCUI 成为一个由社区驱动的开源项目。



为何决定增加 Android 支持?



鉴于许多 Android 应用在资源消耗方面表现不佳,项目负责人希望通过 LCUI 来探索 Android 应用开发的可能性,以评估是开发者的技能问题,还是使用的 UI 框架存在问题,或者是由于设备硬件限制所致。



增加 Android 支持的意义何在?




  • 扩大 LCUI 的用户基础

  • 使项目负责人能够开发 Android 应用

  • 为 C 语言开发者提供一个新的娱乐方式

  • 为 Android 开发者提供一个实验和研究的新选项



悬赏奖金是多少?



预计总奖金为 1000 美元,扣除 10% 的平台费用和服务费后,实际可得约为 900 美元。奖金主要来自赞助者的捐赠,最终金额可能会有所变动。如果认为奖金不足,参与者可以通过自己的影响力和渠道吸引更多的赞助。



这样做是不是炒作?



这取决于实际情况。如果有人愿意以较低的奖金完成任务,项目负责人会考虑直接支付全额奖金。但如果所有申请者的报价均高于 1000 美元,则需等待资金充足时再作考虑。



为什么不选择国内的赞助平台?



国际上的赞助平台拥有广泛的开发者社区,发布悬赏更容易吸引到合适的贡献者。相比之下,国内的一些平台在这方面支持不足,虽然有提供悬赏功能,但活动奖金固定且持续时间短,无法满足当前的需求。



如果我想承担这项工作,应该怎么做?



首先在 issuehunt.io 上提出你的期望奖金,然后在 issue #210 中留言表达你的兴趣。项目负责人会在评估后决定最终人选。如果有任何疑问,也可以在留言中提出。



如何为这项工作提供资金支持?



你可以在 issuehunt.io 上增加奖金,或者在 OpenCollective 上为 LCUI 的未来发展提供资金支持。



如果没有足够的资金支持怎么办?



目前首要任务是找到愿意承担此项工作的开发者,并了解他们的期望奖金。资金筹集的具体策略将在后续阶段确定。



参与这项工作有哪些好处?




  • 获得一定的经济回报

  • 积累 C 语言和 Android 开发的经验

  • 向开源社区展示你的技术实力

  • 你的名字和链接将出现在项目的 README 文件和官方网站上



这些好处特别适合那些时间充裕、具备一定编程能力并希望积累实战经验的计算机专业学生,既能提升编程技能,还能赚取一些额外收入。



具体的工作内容是什么?



工作内容主要包括以下几个方面:




  • 驱动开发

    • 视频驱动

    • 触摸屏驱动

    • 键盘驱动

    • UI 主线程循环



  • 接口实现

    • DPI 获取接口

    • 屏幕分辨率获取接口

    • 系统信息获取接口



  • 文档编写

    • 技术文档,描述 Android 端支持的技术实现细节

    • 开发指南,指导如何基于 LCUI 创建 Android 应用及调试方法



  • 示例应用

    • 开发 Android 示例项目,移植现有的 helloworld 示例程序



  • CI 服务集成

    • 编译 Android 示例项目为 APK 文件,并上传至 GitHub Actions 的制品列表供下载

    • 在 Android 模拟器中安装并运行 APK,将截图发布在 commit 页面的评论或 GitHub Actions 的制品列表中



  • 代码质量要求

    • 代码结构清晰,命名规范,易于理解和维护,确保项目负责人能够理解





对于 Android 端的驱动开发,可以参考 SDL 项目的源码:SDL 安卓视频驱动源码



仅实现基本的 Android 支持是否足够?后续还有哪些计划?



初步目标是完成上述工作内容。一旦基本的 Android 支持实现,项目组将根据反馈制定下一步的发展计划。


推荐阅读
  • RecyclerView初步学习(一)
    RecyclerView初步学习(一)ReCyclerView提供了一种插件式的编程模式,除了提供ViewHolder缓存模式,还可以自定义动画,分割符,布局样式,相比于传统的ListVi ... [详细]
  • Android 九宫格布局详解及实现:人人网应用示例
    本文深入探讨了人人网Android应用中独特的九宫格布局设计,解析其背后的GridView实现原理,并提供详细的代码示例。这种布局方式不仅美观大方,而且在现代Android应用中较为少见,值得开发者借鉴。 ... [详细]
  • 1.如何在运行状态查看源代码?查看函数的源代码,我们通常会使用IDE来完成。比如在PyCharm中,你可以Ctrl+鼠标点击进入函数的源代码。那如果没有IDE呢?当我们想使用一个函 ... [详细]
  • IneedtofocusTextCellsonebyoneviaabuttonclick.ItriedlistView.ScrollTo.我需要通过点击按钮逐个关注Tex ... [详细]
  • 本文详细介绍了如何使用 Yii2 的 GridView 组件在列表页面实现数据的直接编辑功能。通过具体的代码示例和步骤,帮助开发者快速掌握这一实用技巧。 ... [详细]
  • CMake跨平台开发实践
    本文介绍如何使用CMake支持不同平台的代码编译。通过一个简单的示例,我们将展示如何编写CMakeLists.txt以适应Linux和Windows平台,并实现跨平台的函数调用。 ... [详细]
  • DNN Community 和 Professional 版本的主要差异
    本文详细解析了 DotNetNuke (DNN) 的两种主要版本:Community 和 Professional。通过对比两者的功能和附加组件,帮助用户选择最适合其需求的版本。 ... [详细]
  • Android LED 数字字体的应用与实现
    本文介绍了一种适用于 Android 应用的 LED 数字字体(digital font),并详细描述了其在 UI 设计中的应用场景及其实现方法。这种字体常用于视频、广告倒计时等场景,能够增强视觉效果。 ... [详细]
  • 扫描线三巨头 hdu1928hdu 1255  hdu 1542 [POJ 1151]
    学习链接:http:blog.csdn.netlwt36articledetails48908031学习扫描线主要学习的是一种扫描的思想,后期可以求解很 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 本文详细介绍了Java中org.eclipse.ui.forms.widgets.ExpandableComposite类的addExpansionListener()方法,并提供了多个实际代码示例,帮助开发者更好地理解和使用该方法。这些示例来源于多个知名开源项目,具有很高的参考价值。 ... [详细]
  • 使用 Azure Service Principal 和 Microsoft Graph API 获取 AAD 用户列表
    本文介绍了一段通用代码示例,该代码不仅能够操作 Azure Active Directory (AAD),还可以通过 Azure Service Principal 的授权访问和管理 Azure 订阅资源。Azure 的架构可以分为两个层级:AAD 和 Subscription。 ... [详细]
  • 在前两篇文章中,我们探讨了 ControllerDescriptor 和 ActionDescriptor 这两个描述对象,分别对应控制器和操作方法。本文将基于 MVC3 源码进一步分析 ParameterDescriptor,即用于描述 Action 方法参数的对象,并详细介绍其工作原理。 ... [详细]
  • Android 渐变圆环加载控件实现
    本文介绍了如何在 Android 中创建一个自定义的渐变圆环加载控件,该控件已在多个知名应用中使用。我们将详细探讨其工作原理和实现方法。 ... [详细]
  • 在使用 DataGridView 时,如果在当前单元格中输入内容但光标未移开,点击保存按钮后,输入的内容可能无法保存。只有当光标离开单元格后,才能成功保存数据。本文将探讨如何通过调用 DataGridView 的内置方法解决此问题。 ... [详细]
author-avatar
佳麟钧君怡慧_481
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有