仅 2 位 Java 开发,使用小程序上线一款 App

仅 2 位 Java 开发,使用小程序上线一款 App

一次真正意义上的低成本技术架构升级。

项目背景

衡东点货网是根据物流行业发展趋势及国家政策引导开发的网络货运平台,其主要功能承载“车货信息发布、匹配、运费支付与发放、信用管理等”。

而关于项目的开发人员组成,长期以来仅仅只是“核心开发 2 人 实习开发 2 人“的规模,在支撑日常的业务迭代方面力有不逮。同时,结合 2020 年网络货运平台政策的调整,点货网作为网络货运平台,我们的移动端 App 内需嵌入监管平台的 SDK 插件,从而日常业务运营数据能够与监管平台的系统打通,统一管理规范。

难点出现了。

因现有的开发团队组成主要以 Java 工程师为主,同时能够对接三方 SDK 的开发仅两位,开发资源突然捉襟见肘。而在原有的工程中,存在 Uni-App 的选型,在缺少对方技术团队支持的情况下,要我们现有团队实现原生 SDK 的接入颇有难度。同时考虑到后续“点货网 App”自身需具备接入原始 SDK 的能力,因此我们的视角开始转向了“如何保障项目顺利完成联调测试,并提升自有 App 的健壮性”。

我们开始筛选市面上各类跨平台的 App 开发技术,在此期间对比了 Uni-App、Weex、Flutter、mPaaS 等跨平台开发框架。

仅 2 位 Java 开发,使用小程序上线一款 App

作为一名 Java 开发,以上各跨平台开发框架的对比仅作为第一印象。针对各框架的优劣对比没有展开深度分析,仅适用于大家在现有项目/工程中应对特定需求的技术选型参考。

因个人目前只具备 Java 和 Vue.js 的开发能力,无法在短时间内快速掌握一门全新的开发语音或原生 UI 组件开发的能力,但因业务要求我们务必要彻底提升 App 的健壮性,因此团队决定将 Uni-App 替换为 mPaaS。

接入过程回顾

仅 2 位 Java 开发,使用小程序上线一款 App

作为一名 Java 开发,对于 Vue.js 的语法还算熟悉,因此我在 2019 年 8 月起开始接触并测试 mPaaS 的框架能力,尤其是小程序容器的部分,同时在这期间开始了解安卓开发的相关知识。

2020 年 6 月开始,我开始尝试独立接入 mPaaS 小程序,针对点货网 App 进行功能迁移并正式接入监管 SDK 插件。

由于在正式使用之前,我已了解到 mPaaS 产品的具体特性,也了解到 mPaaS 不同版本之间开发配置存在一定差异,最终我们决定直接基于“mPaaS 小程序 Demo”实现点货网的基础功能,并在此基础上针对功能进行调整,以满足自身业务特性的需要。期间也有遇到一些小问题,在 mPaaS 研发团队的支持下得以顺利解决。

我们也建议大家,如果是初次接触 mPaaS,务必要针对官方文档提供的步骤,结合现有的 Demo 进行测试,避免因技术框架兼容性导致各类异常错误。

最终,得益于 mPaaS 小程序的不断升级迭代,点货网 App 的小程序组件接入和更新也变得愈发简单,技术门槛被极大地降低优化。

回顾第一版点货网 App 接入 mPaaS 小程序容器的场景,当时我们团队只有两位技术开发,另外一位同学还需要兼顾运维和其他开发事项,因此实际上真正开发的只有一个人。

面对这样的情况,我们只能选择冒险。但本质上,我们实际上信任的还是 mPaaS 具备原生应用与小程序兼容的框架能力,以及 mPaaS 技术团队的支持响应速度。

我们选择现有的 App 直接接入 mPaaS 进行开发,为了加快业务的迭代速度,第一版点货网 App 中我们只包含原有 App 的核心功能和监管 SDK 能力,并同时根据实际业务需求完成迭代。

目前,点货网 App 基于 mPaaS 小程序,已成功实现从欢迎页启动后自动进入小程序,并直接调用自定义 API 实现欢迎页面销毁和安卓端权限校验的功能。预计八月下旬,我们将正式上线,替换原有的 App 为客户提供服务。

价值沉淀

仅 2 位 Java 开发,使用小程序上线一款 App

回顾接入 mPaaS 小程序的历程,我们也受益良多。对于 Java 开发同学而言,我们不再需要专门学习安卓的 UI,用熟悉的 HTML 即可直接进行页面开发,真正地以较低成本进行技术架构的升级。

而我们的 Web 端与小程序的网络请求全部使用相同的框架,因此 Web 端已开发完成的业务能够快速地迁移至 mPaaS 小程序中,只需简单的调整即可满足 mPaaS 业务逻辑的处理需要,从而避免业务逻辑代码重复编写,保证双端业务逻辑一致,降低多人协作中业务理解差异导致项目实现不一致的问题。

实现 mPaaS 接入后,只有在原生 SDK 插件变更时或增加时,我们才需要针对 App 进行更新。像一般小程序的功能调整、变更、升级,均可以实现用户无感知升级,避免对用户的打扰,同时也能充分满足我们业务快速迭代的诉求。

未来展望

仅 2 位 Java 开发,使用小程序上线一款 App

作为一名非专业的 App 开发,我们也由衷希望 mPaaS 能够推出插件市场或者平台,为开发者直接提供如人脸核身、图片识别、手机号码校验等通用基础 API 服务或者功能。

开发者的诉求实际上很简单,如果能专注于业务的需求开发,而不是重复地接入通用化的能力,对于个人及业务的成长都具有一定价值。

未来“点货网 App”将继续依托 mPaaS,利用现有的移动端组件能力帮助 App 持续升级。以客户的需求为导向,结合实际业务随取,为客户提供简单、便捷和实用的 App 体验。对于“点货网 App”而言,我们同时也保持开放,希望能够跟更多开发者一起交流接入、使用 mPaaS 过程中遇到的问题,和大家一起共建 mPaaS 的开发者生态。

本文为阿里云原创内容,未经允许不得转载。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2023年4月3日 上午11:16
下一篇 2023年4月3日 上午11:26

相关推荐

  • 退休党员意识形态存在的问题

    退休党员意识形态存在的问题 退休党员是中国共产党的重要力量,他们在退休前是基层的党员,为社会和人民做出了重要贡献。然而,随着社会的发展和进步,退休党员的意识形态也面临着一些问题。 …

    科研百科 2024年10月19日
    14
  • “我国农业标准化战略与增强农业竞争力研究”项目立项

        近日,质标所钱永忠副所长申请的国家社科基金重点项目“我国农业标准化战略与增强农业竞争力研究”,收到全国哲学社会科学规划…

    科研百科 2022年5月18日
    435
  • 月球第一颗棉芽种子来自棉花所

      近日,嫦娥四号登陆月球背面的生物科普试验载荷传回最后一张试验照片,显示载荷内生长出的棉花嫩芽长势良好。这是在经历月球高真空、宽温差、强辐射等严峻环境考验后,人类在月球上种植出的…

    科研百科 2022年5月14日
    251
  • 青岛大学 niit

    青岛大学 niit 课程简介 青岛大学 niit 课程是青岛大学推出的一款在线学习平台,旨在为学生提供全面的计算机科学课程。该课程由青岛大学的计算机科学教授和专家授课,内容涵盖了计…

    科研百科 2024年11月30日
    4
  • 横向科研项目管理,科研项目考核管理办法

    你现在可能还无法回答以下问题,但等你准备好了,就可以回到这里重新审视它们。你的答案将帮助你决定该如何进行研究。 关于使用博客的建议同样适用于视频日志。即便创作者允许视频日志公开播放…

    科研百科 2023年10月7日
    136
  • 3ds Max云渲染平台哪个好?(3dmax云渲染怎么收费)

    3ds Max云渲染平台哪个好? 3ds Max是一款包含建模、动画、粒子动力学等强大功能的三维动画制作软件,3ds Max对特定如游戏建模、特效制作、产品模型设计等领域都具备了过…

    科研百科 2023年8月25日
    151
  • 企业科研项目碳交易

    企业科研项目碳交易:探索绿色低碳发展的新途径 随着全球气候变化的加剧,企业科研项目碳交易逐渐成为一种重要的绿色低碳发展方式。作为一种新兴的经济模式,企业科研项目碳交易不仅有助于减少…

    科研百科 2025年2月24日
    0
  • 甘州区乌江镇:“三步走”打牢党建工作基础(狠抓党建基础工作)

    甘州融媒讯 今年以来,甘州区乌江镇通过建立工作抓手、统一工作标准、加强督查落实“三步走”,持续狠抓机制创新、制度执行、工作落实,全镇整体党建工作水平持续提升。 配齐力量,“建立工作…

    科研百科 2023年7月27日
    190
  • 特产所牛病毒性腹泻病毒研究取得进展

        近日,中国农业科学院特产研究所特种动物病原与免疫创新团队在牛病毒性腹泻病毒研究取得进展,目前已经分离到BVDV1和BVDV2型病毒多株,并在我…

    科研百科 2022年5月16日
    405
  • 浙江省财政厅差旅费

    浙江省财政厅差旅费浙江省财政厅差旅费454.2022年1月,浙江省高水区晋级建筑管理局将设置全市高水县,其中建筑材料为:建设高品质的“空中外语”、建设专业的艺术殿堂。 美术设计学以…

    科研百科 2024年11月26日
    2