• Stars
    star
    252
  • Rank 161,312 (Top 4 %)
  • Language
    Java
  • Created over 5 years ago
  • Updated about 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

潘多拉的魔盒了解一下。

Pandora

Updating

Introduction

在古希腊的神话中 Pandora 是世界上第一个女人,一个 all-gifted 的女人(具有一切天赋的女人),而潘多拉的魔盒里装着希望。

借着 all-gifted 的寓意,我创建了这个开源库: Pandora,她是一个精心挑选的工具类集合。

Pandora 与其他工具类库的不同:

  1. 虽然说 Pandora 也可以算是工具类的集合,但是这里的类&方法的数量非常少,只选了极少数真的非常有用且有大概率复用的类,在保证避免编写大量样板代码的基础之上,减少引入不必要类的可能,防止包体积增大;
  2. Pandora 包含两个版本,basic 以及 full ,可以满足不同人的不同需求;
  3. 真正实用且好用,高质量的代码。

Pandora 工程介绍

目前 Pandora 由两个模块组成 :

  1. pandora-basic ,只包含非常非常基础的工具类 ,绝大多数 App 都需要的工具类,在保证避免编写大量样板代码的基础之上,减少引入不必要类的可能,防止包体积增大;
  2. pandora-full ,依赖并包含 basic ,会包含各种 Utils ,可能涉及到 Android 开发的方方面面。

当你只需要非常基础的能力时,可以依赖 basic 版本,如果需要更多,则选择 full 版本,更推荐只依赖 basic 版本。

Getting Started

只依赖 baisc 能力:

implementation 'me.yifeiyuan.pandora:pandora-basic:1.0.3'

依赖 full 能力:

implementation 'me.yifeiyuan.pandora:pandora-full:1.0.3'

注意:full 版本包含 basic 版本的能力,所以不再需要添加 basic 的依赖。

Basic 版本的能力介绍

注意: 方法可能有变,请以实际代码为准。

ApplicationUtils

一个可以设置、获取全局 Application 的工具类,Context 在 Android 中非常常用,但是其实很多时候我们不需要传递 Activity 类型的 Context , 使用 ApplicationUtils 可以缓解我们到处传递 Context 的困境。(默认会从 ActivityThread 获取 Application)

applicationutils

MainThread

一个关于主线程的工具类,可以方便地将 Runnable post 到主线程执行

mainthread

ToastUtils

一个全局单例 Toast ,解决多次实例化 Toast 导致不停弹 Toast 的问题

toastutils

LifecycleHandler

在使用 Handler 的时候我们总是担心 Handler 会导致内存泄露,于是我们每次都会在 onDestroy 方法里移除 Handler 的消息,编写样板代码,LifecycleHandler 的出现就是为了解决这个困境,使用它,你不再需要关注 onDestroy 啦!

lifecyclehandler

UiUtils

Android 开发不可避免的要跟像素 dp 等打交道,UiUtils 包含一些数据单位转换的操作。

uiutils

Predictions

一个用来做”断言”的功能的工具类,用来验证判断参数是否合法。

虽然我们有 NonNull 等注解 ,但是依然避免不了外部传递非法参数,这个时候我们避免不了写样板代码,检测参数是否非法,如果是则抛出异常,Predictions 可以让你少写一些检查抛、异常的样板代码

predictions

贡献

欢迎提供更多更好用的 Utils ,请添加到 pandora-full 模块,并提 PR,感谢支持!

如果有 Bug ,非常欢迎提 issue 反馈!

可以 star 支持一下哟!~

More Repositories

1

Android-Resources

优秀的Android资源收集与整理
379
star
2

PracticeDemo

@DEPRECATED 个人练习项目,记录成长之路
Java
328
star
3

Flap

Enhance RecyclerView and Adapter and ViewHolder. Make them much more powerful and easier to use.
Kotlin
286
star
4

PeriscopeLayout

A layout with animation like Periscope's
Java
272
star
5

AndFixDemo

a demo for AndFix (AndroidStudio)
Java
205
star
6

FullStackNotes

我想做个全栈,这是我成长之路的笔记。——2019.05.22
Java
103
star
7

ReadingNotes

记录一些书籍的比较,阅读心得,在加上自己的看法
91
star
8

OnePiece

OnePiece Of Android
Kotlin
59
star
9

Alibaba-Nei-Tui-Guide

🔥🔥《阿里巴巴内推指南》🔥🔥
58
star
10

Android-Skill-Map

Android 技能谱
29
star
11

CrashCatcher

捕获crash,存入本地文件~
Java
17
star
12

StudyNotes

Merged to OnePiece https://github.com/AlanCheen/OnePiece
17
star
13

TalkAboutApk

Java
11
star
14

Awesome-Flutter

迁移至https://github.com/HeadFirstAndroid/HeadFirstAndroidIndex
11
star
15

Climb

练习之作
Java
8
star
16

LearnDataBinding

Java
7
star
17

Android-API-Guide-zh-cn

Android-API 官方翻译 搬运整理版
6
star
18

DesignPattern

关于设计模式的学习/写作的练习代码
Java
6
star
19

OkHttpDownLoadDemo

带进度的okhttp下载文件demo
Java
6
star
20

AndroidDebugHelper

Kotlin
4
star
21

HeadFirstAndroidIndex

索引
Kotlin
4
star
22

DexposedDemo

利用Dexposed 修改 IMEI
Java
4
star
23

Stair

Java
3
star
24

HeadFirstWeb

学一下前端。
HTML
3
star
25

MasteringAndroid

尝试下 Android 新技术
Kotlin
3
star
26

MacTools

mac apps
2
star
27

posts

hexo blog backup
2
star
28

FaceDetection

a demo of face detection
Java
2
star
29

Awesome-PageTransformer

PageTransformers for ViewPager
Java
2
star
30

Utils

已废弃,更新请看:https://github.com/AlanCheen/Pandora
Java
2
star
31

HelloWeex

Java
1
star
32

as-setting-backup

AndroidStudio 配置备份
1
star
33

alancheen.github.io

my blog
HTML
1
star
34

UnderstandingAndroid

在实践中理解 Android
Java
1
star
35

OhMyEnglish

Improve your English
1
star
36

helloweb

HTML
1
star