All Projects → G-Joker → Weaponapp

G-Joker / Weaponapp

一个尽量做到极致的集大成App,努力做到最好(开发阶段)——MVVM+Retrofit+RxJava+Small 插件化+单元测试+MD

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Weaponapp

Mvvmhabit
goldze: 本人喜欢尝试新的技术,以后发现有好用的东西,我将会在企业项目中实战,没有问题了就会把它引入到MVVMHabit中,一直维护着这套框架,谢谢各位朋友的支持。如果觉得这套框架不错的话,麻烦点个 star,你的支持则是我前进的动力!
Stars: ✭ 6,789 (+571.51%)
Mutual labels:  rxjava, okhttp, mvvm, retrofit2, databinding
Mvvmsmart
基于谷歌最新AAC架构,MVVM设计模式的一套快速开发库,整合ViewModel+Lifecycles+Navigation+DataBinding+LiveData+Okhttp+Retrofit+RxJava+Glide等主流模块,满足日常开发需求。使用该框架可以快速开发高质量、易维护的Android应用。 项目组会持续维护,请放心使用.欢迎Start并Fork交流.
Stars: ✭ 382 (-62.22%)
Mutual labels:  okhttp, mvvm, retrofit2, databinding
Mvvmhabitcomponent
👕基于MVVMHabit框架,结合阿里ARouter打造的一套Android MVVM组件化开发方案
Stars: ✭ 857 (-15.23%)
Mutual labels:  rxjava, okhttp, mvvm, databinding
Coolweather
Weather App that uses Android best practices. Android Jetpack, clean architecture. Written in Kotlin
Stars: ✭ 154 (-84.77%)
Mutual labels:  gradle, mvvm, retrofit2, databinding
Mvvm Juejin
高仿"掘金Android App": databinding + kotlin + rx 的优雅实践。(持续打磨中~)
Stars: ✭ 403 (-60.14%)
Mutual labels:  okhttp, mvvm, databinding
Paonet
【MVVM+RxJava2+AspectJ】泡网第三方客户端,网站主页:http://www.jcodecraeer.com/index.php
Stars: ✭ 374 (-63.01%)
Mutual labels:  mvvm, retrofit2, databinding
Pokemongo
神奇宝贝 (PokemonGo) 基于 Jetpack + MVVM + Repository 设计模式 + Data Mapper + Kotlin Flow 的实战项目,如果这个仓库对你有帮助,请仓库右上角帮我 star 一下,非常感谢。
Stars: ✭ 848 (-16.12%)
Mutual labels:  mvvm, retrofit2, databinding
Android Mvvm
MVVM on Android using RxJava and Data Binding
Stars: ✭ 443 (-56.18%)
Mutual labels:  rxjava, mvvm, databinding
Jetpack github
基于Kotlin + Jetpack全家桶 + Coroutines(协程) + Flutter等架构实现的一款精简版Github客户端项目,望与广大小伙伴一起成长,欢迎start or fork!
Stars: ✭ 314 (-68.94%)
Mutual labels:  mvvm, retrofit2, databinding
Wanandroid
🏄 基于Architecture Components dependencies (Lifecycles,LiveData,ViewModel,Room)构建的WanAndroid开源项目。 你值得拥有的MVVM快速开发框架:https://github.com/jenly1314/MVVMFrame
Stars: ✭ 410 (-59.45%)
Mutual labels:  mvvm, retrofit2, databinding
Kotlin Life
App界的一股清流 音视频vr应有尽有 完全按照Material design规范设计的App (written with java and Kotlin)
Stars: ✭ 864 (-14.54%)
Mutual labels:  rxjava, okhttp, retrofit2
Androidproject
Android 技术中台,但愿人长久,搬砖不再有
Stars: ✭ 4,398 (+335.01%)
Mutual labels:  rxjava, mvvm, retrofit2
Wanandroid
🐔🏀【停止维护,已使用Jetpack+Mvvm重构】根据鸿神提供的WanAndroid开放Api来制作的产品级玩安卓App,采用Kotlin语言,基于Material Design+AndroidX +MVP+RxJava+Retrofit等框架开发,注释超详细,方便大家练手
Stars: ✭ 674 (-33.33%)
Mutual labels:  rxjava, okhttp, retrofit2
Android Jetpack Demo
🔥 快速入门Android Jetpack以及相关Kotlin、RxJava、MVVM等主流技术,独立构架App的基础技能
Stars: ✭ 335 (-66.86%)
Mutual labels:  rxjava, mvvm, databinding
Androidrapidlibrary
Android 快速开发库,主要想实现一条属于自己的开发框架。包括网络访问,数据,UI等等
Stars: ✭ 577 (-42.93%)
Mutual labels:  rxjava, okhttp, retrofit2
Blockchain Tracker
A blockchain market tracking app. Example implementation of reactive clean architecture and testing.
Stars: ✭ 30 (-97.03%)
Mutual labels:  mvvm, unit-test, databinding
Mvvmarms
Android MVVM Architecture Components based on MVPArms and Android Architecture Components.
Stars: ✭ 425 (-57.96%)
Mutual labels:  mvvm, retrofit2, databinding
Android Mvp Mvvm Flytour
🔥🔥🔥 FlyTour是Android MVVM+MVP+Dagger2+Retrofit+RxJava+组件化+插件组成的双编码架构+双工程架构+双语言Android应用开发框架,通过不断的升级迭代该框架已经有了十个不同的版本,5.0之前工程架构采用gradle配置实现组件化,5.0之后的工程架构采用VirtualAPK实现了插件化,5.0之前采用Java编码实现,5.0之后采用Kotlin编码实现,编码架构由MVVM和MVP组成,工程架构和编码架构及编码语言开发者可根据自己具体的项目实际需求去决定选择使用,该框架是Android组件化、Android插件化、Android MVP架构、Android MVVM架构的集大成者,帮助你快速的搭建自己的App项目开发框架,以便把主要的精…
Stars: ✭ 2,948 (+191.59%)
Mutual labels:  mvvm, retrofit2, databinding
Kotlinjetpackinaction
🔥🔥 Kotlin Jetpack zero to hero. 新手到高手
Stars: ✭ 264 (-73.89%)
Mutual labels:  mvvm, retrofit2, databinding
Viabus Architecture
让 Android 开发可以像流水线一样高效的,职责分离架构 ⚡ 不同于 MVP 的配置解耦,也不能和 似是而非 的 MVVM - Clean 同日而语。VIABUS 是世界范围内首个明确提出,通过职责分离,来真正实现 UI 和 业务并行开发的 Android 项目级开发架构和设计模式理念。
Stars: ✭ 485 (-52.03%)
Mutual labels:  rxjava, okhttp, mvvm

WeaponApp

联系我们

开发人员WeaponZhi,xiaweizi,hiyangyue,foxlee

AI极客研修站-作者WeaponZhi的公众号,对AI有兴趣的童鞋欢迎关注~

image.png

QQ1Group

一个极致的App。学习项目,帮助你提升独自开发 Android 业务层的能力。基于该开发框架,可以快速构建应用,同时你可以当做一个工具 App,以供你平时开发参考。

整包打包方式:

gradlew cleanLib
gradlew buildLib -q -Dbundle.arch=x86
gradlew cleanBundle
gradlew buildBundle -q -Dbundle.arch=x86

其中 -q 代表整洁模式,只看到插件的打包结果信息。

-Dbundle.arch 中,如果是模拟器调试,则是x86,如果是真机调试则是armeabi

如遇真机启动奔溃

请先检查Logcat下的日志,并定位到对应的错误。若无明显的错误日志,或者是PushReceiver ClassNotFoundException的错误,请先确定真机的CPU的类型,并根据类型进行相应的打包。

通过

adb shell
cat /proc/cpuinfo  

的方式获取CPU类型,比如红米 note 3:

Processor	: AArch64 Processor rev 2 (aarch64)

对应的打包则更换为

#so版, 区分CPU架构,一般模拟器使用 x86,真机使用 armabi armeabi-v7a arm64-v8a
gradlew buildLib -q -Dbundle.arch=arm64-v8a
gradlew buildBundle -q -Dbundle.arch=arm64-v8a

脚本打包方式:

buildAll        全量打包
buildBundle     只打包Bundle,Lib没改变
buildAll q d    相当于加-q 和 -Dbundle.arch=x86
buildBundle q d 相当于加-q 和 -Dbundle.arch=x86

打包如果出现异常,可以先输入 gradlew cleanBuild,再重新执行一遍打包流程 详细打包指令参数请参考Small文档:Small文档

开发方法:测试驱动开发

它要求在编写某个功能的代码之前先编写测试代码,然后只编写使测试通过的功能代码,通过测试来推动整个开发的进行。这有助于编写简洁可用和高质量的代码,并加速开发过程。

测试驱动开发会反向帮助程序员编写设计性良好的代码,为了保证代码的可测性,要求代码中的类和方法必须严格遵循单一性原则。

同时,通过已经封装好的 MVVM 框架,可以只通过单元测试 ViewModel 层方法,构造空的 View 和 Model 参数,从而测试整个页面逻辑。

开发框架:MVVM

通过高度封装的 MVVM 框架,配合databinding进行高效开发,通过该框架,可以快速的进行业务逻辑的开发,对 databinding 底层技术进行隐藏,即使程序员对 MVVM 和 Databinding 理解不深,按照框架流程也可以顺畅开发。

并且通过该框架,可以轻松的进行单元测试,MVVM 的具体开发流程和单元测试操作,将在后续开发过程中补充。

技术栈

我们将在项目中集成、封装和二次开发现在 Android 领域使用最多,最专业,最热门的技术,并实用在项目中,目前计划引入的技术有(加粗字体为二次开发或者完全自主开发库):

  • [x] DataBinding+MVVM开发
  • [x] 组件化开发
  • [x] Small 插件化框架
  • [x] Databinding
  • [x] 自建服务器
  • [x] 自定义 Gradle 插件
  • [x] 集成QQ、微信、微博官方分享
  • [x] 全平台推送服务
  • [x] 友盟统计
  • [x] OkHttp + Retrofit + RxJava
  • [x] 通过 RecyclerView 拓展的刷新列表库
  • [ ] 控件组件化
  • [ ] 单元测试
  • [x] 组件化集成调试
  • [x] 即时通讯
  • [x] 视频服务
  • [x] Material Design
  • [x] Glide

注:首页数据样式参考于慕课网组件化视频 https://coding.imooc.com/learn/list/84.html 使用项目MVVM重新实现 感谢 qndroid 老师

提交规范

  • [func] do sth:功能开发
  • [fixbug] #xx# do sth:Bug 修改,#号内为 issue 编号
  • [docs] do sth:文档
  • [chore] do sth:build相关的修改
  • [test] do sth:添加测试代码
  • [optimize] do sth: 优化部分代码
  • [style] do sth: 格式化上的格式化、删除空白行等,无关功能

集成调试方法

在 gradle.properties 中 DEBUG 为 true 则打开集成调试环境,需要哪几个模块联调,就把下面的对应模块置为 true。

比如我要联调 mine 和 message 模块,就把DEBUGDEVELOP_MINEDEVELOP_MESSAGE置为true,然后重新同步一下Gradle即可

DEBUG 置为 false 的时候为整包编译或者可以理解为Release模式,将默认添加所有模块,忽略下面模块的单独配置布尔值。

单元测试设计思路与使用方法

待补充

待补充

未完待续,目前正迭代中...

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].