神奇的Android Jetpack 项目模版代码之线上生成

简介: 神奇的Android Jetpack 项目模版代码之线上生成

引言


不知道大家用过Spring Initializr没有,这个是鼎鼎大名的Spring boot 在线生成工具,一个完美的生态,给开发者提供太多的便利,默默付出着,可为什么没有一个Android项目的在线生成工具呢?大家都不需要吗,我并不这么想,大家都知道Jetpack提供了一套Android应用开发的各种组件,甚是方便,而且官方还专门开源了这个architecture-components-samples,里面有大量的模版的项目,不光是官方,有很多的作者也都针对MVVM做了开源,我本人也做过MVP的开源项目,都是基于实际开发经验搭建起来的。 知名的MVVM:

  • MVVM-Architecture
  • Jetpack-MVVM-Best-Practice
  • MVVMHabit等等吧,但是对于这些项目,你有没有一种困惑,如果我们用他们总结好的经验去开发新的项目,是不是面临修改包名,添加一些自己喜欢的框架依赖等等需求,但这怎么做的到呢?这就是我接下来要做的事情,做一个在线Android项目生成工具

Jetpack在线生成工具


为什么叫Jetpack生成工具呢,为什么?你自己体会,哈哈,这不是重点,重点是我们要做出什么样子,请看设计图,确切说是实现图,因为已经部署了,请点击标题查看

image.png

image.png

image.png

三张图,看清楚了吗?其实这个在线工具主要有如下功能

  • 自定义包名
  • 自定义项目名
  • 选择开发语言
  • 选择要集成的框架,集成框架分为默认依赖,就是在build.gradle中添加基础依赖,添加用例的话就是添加基础的封住+demo示例。
  • MVVM架构模版选择,后期集成更多的MVVM模版进来提供给大家自定义项目 现在看来是不是有点意思了,但这些功能如何实现呢?下面我讲讲我的实现思路

实现


基本的构成 = 网站 + 服务 网站我选择用flutter实现,因为flutter的便利已经让我爱不释手,一套代码运行android、ios、web,很不错 服务我选择nodejs,因为nodejs最适合做这种小工具,开发简单,运行稳定。

flutter 实现


已经 开源至 github 我做的网站整套代码都在这里ibaozi请看如图中的代码实现

image.png

nodejs 实现


跟大家分享下经验 其实最大的难点就是,包名的替换,关键字的替换,网上搜了很多,找到如下几个特别火的,可以任选其一实现yeoman.io/github.com/wycats/hand…参考项目:github.com/dekzitfz/ge…最关键的代码实现

this.fs.copyTpl(
          this.templatePath('settings.gradle'),
          this.destinationPath(rootDir + '/settings.gradle'),
          {app_name: this.answers.name.replace(/\s/g, '')}
        );

该项目就是通过这段代码,复制模版代码,然后替换里面定义好的app_name,然后将替换好的代码粘贴到另一个路径里。

todo


未来会加入更多的模版代码进来,造福于你们。也欢迎想合作的私信我,我们聊下合作模式。

服务部署中,第一版测试版马上就要跟您见面了,眨眨眼再刷新网站试试看😄


目录
相关文章
|
1月前
|
Ubuntu 网络协议 Java
【Android平板编程】远程Ubuntu服务器code-server编程写代码
【Android平板编程】远程Ubuntu服务器code-server编程写代码
|
3月前
|
Android开发 开发者
什么是Android Jetpack,它包括哪些组件?
什么是Android Jetpack,它包括哪些组件?
42 0
|
3月前
|
人工智能 IDE 开发工具
Studio Bot - 让 AI 帮我写 Android 代码
Studio Bot - 让 AI 帮我写 Android 代码
161 1
|
3月前
|
IDE API 开发工具
Google I/O :Android Jetpack 最新变化(四)Compose
Google I/O :Android Jetpack 最新变化(四)Compose
105 0
|
3月前
|
API Android开发
Google I/O :Android Jetpack 最新变化(三)UI
Google I/O :Android Jetpack 最新变化(三)UI
49 0
|
2天前
|
Android开发
Android源代码定制:添加customize.mk文件进行分项目和分客户的定制
Android源代码定制:添加customize.mk文件进行分项目和分客户的定制
2 0
|
14天前
|
存储 数据库 Android开发
构建高效安卓应用:采用Jetpack架构组件优化用户体验
【4月更文挑战第12天】 在当今快速发展的数字时代,Android 应用程序的流畅性与响应速度对用户满意度至关重要。为提高应用性能并降低维护成本,开发者需寻求先进的技术解决方案。本文将探讨如何利用 Android Jetpack 中的架构组件 — 如 LiveData、ViewModel 和 Room — 来构建高质量的安卓应用。通过具体实施案例分析,我们将展示这些组件如何协同工作以实现数据持久化、界面与逻辑分离,以及确保数据的即时更新,从而优化用户体验并提升应用的可维护性和可测试性。
|
16天前
|
XML 移动开发 Android开发
构建高效安卓应用:采用Jetpack Compose实现动态UI
【4月更文挑战第10天】 在现代移动开发中,用户界面的流畅性和响应性对于应用的成功至关重要。随着技术的不断进步,安卓开发者寻求更加高效和简洁的方式来构建动态且吸引人的UI。本文将深入探讨Jetpack Compose这一革新性技术,它通过声明式编程模型简化了UI构建过程,并提升了性能与跨平台开发的可行性。我们将从基本概念出发,逐步解析如何利用Jetpack Compose来创建具有数据动态绑定能力的安卓应用,同时确保应用的高性能和良好用户体验。
15 0
|
18天前
|
XML 开发工具 Android开发
构建高效的安卓应用:使用Jetpack Compose优化UI开发
【4月更文挑战第7天】 随着Android开发不断进化,开发者面临着提高应用性能与简化UI构建流程的双重挑战。本文将探讨如何使用Jetpack Compose这一现代UI工具包来优化安卓应用的开发流程,并提升用户界面的流畅性与一致性。通过介绍Jetpack Compose的核心概念、与传统方法的区别以及实际集成步骤,我们旨在提供一种高效且可靠的解决方案,以帮助开发者构建响应迅速且用户体验优良的安卓应用。
|
1月前
|
XML API Android开发
【Android 从入门到出门】第三章:使用Hilt处理Jetpack Compose UI状态
【Android 从入门到出门】第三章:使用Hilt处理Jetpack Compose UI状态
26 4