Android Tools 开发工具库开源项目总结
在Android开发中,我们不免会遇到使用一些工具库来简化我们的工具代码的编写,以下是本人之前star的开源项目,供大家参考:
一、android_testsuite
项目地址:https://github.com/renhui/android_testsuite
Android开发工具之app遍历
提供了查找相同UID应用和便利所有应用的功能,如下图:
(如果想了解Android的UID机制,可以看手机操作系统知识整理(二):Android UID 机制)

二、CommonLibrary
项目地址:https://github.com/smuyyh/CommonLibary
主要是整理的一些项目开发中常用的工具类、通用UI的集合,尽可能的覆盖Android开发中通用的一些东西。
anim
AnimationUtils、ViewAnimationUtils。动画工具类,也可为视图创建动画效果。
data
AESUtils、Base64、ByteUtil、DESUtils、HexUtil、MD5Utils、RSAEncrypt、SharePreUtils。用于数据的安全性及数据持久化
io
BitmapUtils、FileUtils、IOUtils、PhotoUtils、StorageUtils。用于图片、文件、Bitmap、IO流之间的转换
log
LogUtils。Log工具类,可控制Log输出开关、保存Log到文件、过滤输出等级
network
用于判断网络连接类型、监听网络变化、设置网络、开启GPS等。
toast
DialogUtils、NotificationUtils、ToastUtils。Toast工具类,解决连续弹出问题,发送通知栏信息、弹出对话框等。
utils
各类常用工具类,包括AlarmUtils,AsyncExecutor,CheckUtils,ClipboardUtils,DateUtils,DeviceUtils,FieldUtils,FlashLightUtils,InputMethodUtils,KeyguardLockUtils,NumberUtils,PackageUtils,PatternUtils,ShellUtils,StringUtils,VibrateUtils,WakeLockUtils,ConvertUtils、DimenUtils、JSONUtils、SerializeUtils
view
各类自定义控件。例如密码输入框、下拉回弹ListView、带删除键的EditText、自动匹配邮箱输入框...
1、闪烁的文字ShimmerTextView及ShimmerButton,修改自Shimmer-android,xml下新增相关动画属性,可直接启动动画。使用方式: 例如ShimmerTextView
<com.yuyh.library.view.text.ShimmerTextView
android:id="@+id/tvShimmer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:gravity="center"
android:text="发现没,文字会发亮哦~~"
android:textColor="#AAAAAA"
android:textSize="20sp"
app:direction="ANIMATION_DIRECTION_RTL"
app:duration="2000"
app:model="START_RIGHT_AWAY"
app:reflectionColor="#FFFFFF"
app:repeatCount="-1"
app:startDelay="0"
android:background="#000000"/>
当然,也可以在Java直接启动
Shimmer shimmer = new Shimmer().setDirection(direction).setDuration(duration).setRepeatCount(repeatCount).setStartDelay(startDelay); shimmer.start((ShimmerTextView) view);
2、SearchEditText。仿iOS的搜索框,默认搜索图标在中间,编辑模式下搜索图标移动到左边。示例:
<com.yuyh.library.view.text.SearchEditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/edit_bg_white"
android:hint="仿ios输入框"
android:padding="50dp" />
3、ClearEditText。右侧带有清除文字按钮的EditText,是个挺实用的功能
4、EmailAutoCompleteTextView。输入邮箱前缀,会相应生成一些常用的邮箱地址列表,供用户选择,实现快速输入
5、PasswordEditText。默认限定六位密码、类似支付宝、微信支付密码输入框。
progress
progress 集成了CircleProgress这个进度条开源库以及Android-SVProgressHUD,便于显示进度条和Loadding动画
list
1、BorderScrollView。到达顶部或底部触发事件的ScrollView
2、NoScrollListView、NotScrollGridView:全部展开的ListView,解决与ScrollView,由于这两款控件都自带滚动条,嵌套便会出问题,即GridView或ListView会显示不全
3、ReboundListView、ReboundScrollView:弹性ListView和ScrollView,类似iOS实现上下拉可以超出,手指离开后弹回的“阻尼”效果
4、RefreshListView:轻量级下拉刷新ListView控件
layout
common SafePopupWindow:弹窗之前检测Activity是否销毁,防止异常
ViewHolder
ListView或GridView等的适配器视图缓存公共类,在adapter的getView()中使用
button
1、SmoothCheckBox:自定义CheckBox,示例:
<com.yuyh.library.view.button.SmoothCheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="15dp"
app:smoothCheckBox_color_checked="#FF0000"
app:smoothCheckBox_color_unchecked_stroke="#FF0000"
app:smoothCheckBox_is_rect="true" />
2、SwitchButton:自定义SwitchButton动画效果,示例:
<com.yuyh.library.view.button.SwitchButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:onColor="#aa66cc"
app:swBorderWidth="2dp"/>
image
CircleImageView:自定义圆形图片控件,可用于头像
GifView:轻量级可播放GIF动画的控件
RotateImageView:自动旋转的imageveiw,可用于Loadding
RounderImageView:圆角的ImageView
SimpleTagImageView:四个角斜边带标签的ImageView
CrashHandler
CrashHandler:全局异常捕获
三、AndroidHttpCapture
项目地址:https://github.com/JZ-Darkal/AndroidHttpCapture
AndroidHttpCapture网络诊断工具是一款Android手机抓包软件 主要功能包括:手机端抓包、PING/DNS/TraceRoute诊断、抓包HAR数据上传分享。可以认为这是Android版的"Fiddler" 。
示例图:

Android Tools 开发工具库开源项目总结的更多相关文章
- 【Android 应用开发】Ubuntu 下 Android Studio 开发工具使用详解 (旧版本 | 仅作参考)
. 基本上可以导入项目开始使用了 ... . 作者 : 万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/21035637 ...
- 【Android 应用开发】Ubuntu 下 Android Studio 开发工具使用详解
. 基本上可以导入项目开始使用了 ... . 作者 : 万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/21035637 ...
- Android二维码识别 开源项目ZXing的编译
Android二维码识别 开源项目ZXing的编译 Android端的条形码/二维码识别功能 因为手机端的输入不是很方便,所以条形码/二维码的扫描是一种很有效的解决手段. 比较流行的手机应用中,常用的 ...
- iOS:开发常用GitHub开源项目(持续更新)
IOS开发常用GitHub开源项目(持续更新) 数据类 开源库 作者 简介 AFNetworking Mattt 网络请求库 ASIHTTPRequest pokeb 网络请求库 Alamofire ...
- 我发起并创立了一个 Javascript 前端库 开源项目 jWebForm
在线演示地址: ( 在线演示 云平台 由 Kooboo 提供 https://www.kooboo.com/ ) 按钮: http://iwebform.kgeking.kooboo.si ...
- PHPStorm.WebStrom等系列官方开发工具配置本地项目与运程服务器同步
PHPStorm.WebStrom配置本地项目与运程服务器同步 说明:PHPStorm.WebStrom等官方的系统开发工具配置本地项目与运程服务器同步的方法都基本一致没有,几乎没有什么不同之处,我们 ...
- (转载)实例详解Android快速开发工具类总结
实例详解Android快速开发工具类总结 作者:LiJinlun 字体:[增加 减小] 类型:转载 时间:2016-01-24我要评论 这篇文章主要介绍了实例详解Android快速开发工具类总结的相关 ...
- Vue tools开发工具报错Cannot read property '__VUE_DEVTOOLS_UID__' of undefined
使用 vue tools 开发工具,不显示调试面板中的组件,点击控制台报错: Cannot read property 'VUE_DEVTOOLS_UID' of undefined 在 main.j ...
- Android Studio开发工具常用快捷键。部分总结,不全面,只包含新手可能少用的
Android Studio开发工具常用快捷键.部分总结,不全面,只包含新手可能少用的 作者:程序员小冰,CSDN博客:http://blog.csdn.net/qq_21376985 首先说明,因为 ...
随机推荐
- MySQL索引原理以及查询优化
转载自:https://www.cnblogs.com/bypp/p/7755307.html MySQL索引原理以及查询优化 一.介绍 1.什么是索引? 一般的应用系统,读写比例在10:1左右,而且 ...
- Win10系统下安装Gradle-3.5
1. 下载 从官网https://gradle.org/releases/上下载3.5版本 2.解压 解压到D盘,路径是:D:\gradle-3.5 3.配置系统环境变量 首先依赖JAVA_HOME这 ...
- FastDFS防盗链
FastDFS扩展模块内置了通过token来实现防盗链的功能.开启防盗链后,访问文件是需要在url中加两个参数:token和ts.ts为时间戳,token为系统根据时间戳和密码生成的信物.为了系统的安 ...
- 《笨方法学Python》加分题28
#!usr/bin/python # -*-coding:utf-8-*- True and True print ("True") False and True print (& ...
- Numpy 数据类型
numpy支持的数据类型比Python内置的类型多很多,基本上可以和C语言的数据类型对应上, 其中部分类型对应为Python内置的类型.下表列举了常用的Numpy基本类型. 名称 描述 bool_ 布 ...
- 由odoo源不稳定想到的,一个非常简单但是有效的方式解决yum源不稳定的问题,实现无限重试
如题,最近在安装odoo 10, 但是官方源的速度是在是不敢恭维,断断续续的. yum 有没有能够无限重试的参数,于是用python写了个死循环,让它无限重试下去 脚本如下: #! /usr/bin/ ...
- linux端口详解大全
0|无效端口,通常用于分析操作系统 1|传输控制协议端口服务多路开关选择器 2|管理实用程序 3|压缩进程 5|远程作业登录 7|回显 9|丢弃 11|在线用户 13|时间 17|每日引用 18|消息 ...
- Game Theory
HDU 5795 || 3032 把x个石子的堆分成非空两(i, j)或三堆(i, j, k)的操作->(sg[i] ^ sg[j])或(sg[i] ^ sg[j] ^ sg[k])是x的后继 ...
- Java项目下的classpath路径包括哪里
https://my.oschina.net/zjllovecode/blog/916927 classpath指的是.classpath下kind="src" 的路径
- android6.0以上权限动态申请,有视频链接可以看效果。
android6.0以上某些权限需要动态申请,虽然现在大多的手机系统版本在6.0,但是升级到6.0及以上是迟早的事,所以如何能够更好的控制动态申请权限时能有好的提示用户,及给用户带去更好的体验,是需要 ...