lishushu / githubApp

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

GitAssistant Gitub简单Android端应用

运行使用说明

Github 开发API,登录授权已经摒弃用户名和密码方式,使用token授权,所以需要自行注册申请gitHubApp获取到clientId和secretId和填写对应的Authorization callback URL, 配置到项目的local.properties. 该项目代码内使用的CallBack url = "lycgithub://oauth"

CLIENT_ID = "ccd**********947"
CLIENT_SECRET = "cc***********7"

oauth_guide

申请注册Github APP : https://github.com/settings/applications/new

API授权官方文档:作为 GitHub 应用程序 访问 API 端点

项目简介

GitAssistant是一款为Github打造的简单Android应用,评估计划为小型App项目,故而不走组件化设计方案。初步也未规划模块划分,初步以包划分不同模块。

大致包结构如下: GitAssistant

  • common提供基础业务无关的功能以及集成和隔离第三方SDK,后续业务发展可单独成为一个独立module

使用的技术栈和架构划分

Kotlin + ViewMoel + LiveData + Navigation + Retrofit + Rxjava构建的MVVM-LiveData架构: 架构设计图

数据处理部分设计为网络http拉取以及Room本地数据库并存,通过repository内部数据层隔离具体数据来源。

使用到的第三方库

  • RxPermission -- 权限请求
  • MMKV -- 取代Preference的轻量级存储
  • Glide -- 图片加载
  • Leakcanary / Bugly 内存和crash监控
  • Junit/Mockito 辅助测试相关等库

目前完成情况

  • 启动页
  • 登录页面&webView授权登录页
  • 主页面框架(三个子页面+NavigationBar切换页面)
  • 主页-搜索页面

image

image

demo.mp4

About


Languages

Language:Kotlin 96.6%Language:Java 3.4%