Skip to content

Latest commit

 

History

History
143 lines (84 loc) · 6.89 KB

README.md

File metadata and controls

143 lines (84 loc) · 6.89 KB

Gradle

implementation 'io.github.afkt:DevEngine:1.0.0'

目录结构

- dev.engine         | 根目录
   - barcode         | BarCode Engine 条形码、二维码处理
   - cache           | Cache Engine 有效期键值对缓存
   - compress        | Image Compress Engine 图片压缩
   - image           | Image Engine 图片加载、下载、转格式等
   - json            | JSON Engine
   - keyvalue        | KeyValue Engine 键值对存储
   - log             | Log Engine 日志打印
   - media           | Media Selector Engine 多媒体资源选择
   - permission      | Permission Engine 权限申请
   - storage         | Storage Engine 外部、内部文件存储

About

DevEngine(基于 DevAssist Engine 模块) 主要为了解决项目代码中对第三方框架强依赖使用、以及部分功能版本适配。

通过实现对应功能模块 Engine 接口,实现对应的方法功能, 对外无需关注实现代码,直接通过 DevXXXEngine 进行调用,实现对第三方框架解耦、一键替换第三方库、同类库多 Engine 混合使用、以及部分功能适配 ( 如外部文件存储 MediaStore 全局适配 ) 等

可通过 Key-Engine 实现对组件化、模块化各个 Module 使用同类型 Engine 不同库实现使用

依赖实现信息

该库为 Kotlin 实现,另有 Java 实现代码该库会依赖第三方库导致项目体积变大等情况,可自行 copy 所需已实现代码进行使用

已实现模块有(依赖第三方库实现列表如下展示):

  • BarCode 条形码
  • Cache 有效期键值对缓存
  • Image Compress 图片压缩
  • Image 图片加载、下载、转格式
  • JSON 映射
  • KeyValue 键值对存储
  • Log 日志打印
  • Media Selector 多媒体资源选择
  • Permission 权限申请
  • Storage Engine 外部、内部文件存储

如已封装代码无法直接使用于需求实现,可自行 copy 代码进行修改,或自定义对应模块 Engine 实现类进行设置并通过 DevXxxEngine.getEngine(key) 进行调用获取

项目类结构 - 包目录

BarCode 条形码 - 包目录

可选实现方案:

Cache 有效期键值对缓存 - 包目录

可选实现方案:

Image Compress 图片压缩 - 包目录

可选实现方案:

Image 图片加载、下载、转格式 - 包目录

可选实现方案:

JSON 映射 - 包目录

可选实现方案:

KeyValue 键值对存储 - 包目录

可选实现方案:

Log 日志打印 - 包目录

可选实现方案:

Media Selector 多媒体资源选择 - 包目录

可选实现方案:

Permission 权限申请 - 包目录

可选实现方案:

Storage Engine 外部、内部文件存储 - 包目录

可选实现方案: