/RxTool

Android开发人员不得不收集的工具类集合 | 支付宝支付 | 微信支付(统一下单) | 微信分享 | Zip4j压缩(支持分卷压缩与加密) | 一键集成UCrop选择圆形头像 | 一键集成二维码和条形码的扫描与生成 | 常用Dialog | WebView的封装可播放视频 | 仿斗鱼滑动验证码 | Toast封装 | 震动 | GPS | Location定位 | 图片缩放 | Exif 图片添加地理位置信息(经纬度) | 蛛网等级 | 颜色选择器 | 编译运行一下说不定会找到惊喜

Primary LanguageJavaApache License 2.0Apache-2.0

RxTool API RxTool Twitter

image

工欲善其事必先利其器!
Android开发过程经常需要用到各式各样的工具类,虽然大部分只需谷歌/百度一下就能找到;
但是有时候急需使用却苦苦搜寻不到,于是整理了自己平常用到的工具类,以便以后的使用。

如何使用它

Step 1.先在 build.gradle(Project:XXXX) 的 repositories 添加::

allprojects {
	repositories {
		...
		maven { url "https://jitpack.io" }
	}
}

Step 2. 然后在 build.gradle(Module:app) 的 dependencies 添加:

dependencies {
       //基础工具库
       implementation "com.github.vondear.RxTool:RxKit:v2.0.1"

       //UI库
       implementation "com.github.vondear.RxTool:RxUI:v2.0.1"

       //功能库(Zxing扫描与生成二维码条形码 支付宝 微信)
       implementation "com.github.vondear.RxTool:RxFeature:v2.0.1"

       //ArcGis For Android工具库(API:100.1以上版本)
       implementation "com.github.vondear.RxTool:RxArcGisKit:v2.0.1"
}

使用方法:
    在Application中初始化 RxTool.init(this);

注:v2.0.0以后版本是分多模块的版本

近期更新日志

VERSION Description
v2.0.1 新增(高德/百度)地图导航工具
新增ArcGis工具类
v2.0.0 重构成多模块

自定义控件介绍

Name description Module
RxAutoImageView ImageView实现自动左右移动效果 RxUI
RxBarCode 条形码控件 RxUI
RxCaptcha 验证码控件 RxUI
RxCardStackView 银行卡组叠加效果 RxUI
RxCobwebView 蛛网等级控件 RxUI
RxHeartLayout 直播爱心点赞控件 RxUI
RxNetSpeedView 显示当前网速控件 RxUI
RxPopupView 自定义PopupWindow控件 RxUI
RxProgressBar 自定义进度条 RxUI
RxQRCode 二维码控件 RxUI
RxRoundProgress 实现弧形进度条 RxUI
RxRulerWheelView 刻度横向滚动控件 RxUI
RxRunTextView TextView实现跑马灯效果 RxUI
RxScaleImageView 图片缩放控件 RxUI
RxSeatAirplane 飞机票选座控件 RxUI
RxSeatMovie 电影院选座控件 RxUI
RxShineButton 点赞按钮 RxUI
RxShoppingView 商品数量加减控件 RxUI
RxSwipeCaptcha 滑块验证码控件(仿斗鱼验证码) RxUI
RxTextAutoZoom 文字根据布局大小自动缩放效果 RxUI
RxTextViewVertical 单行文字上下滚动 RxUI
RxTextViewVerticalMore 多行文字上下滚动 RxUI
RxTitle 自定义标题控件 RxUI
RxToast Toast的封装 RxKit

Dialog的封装(RxDialog)

Name description
skipTools 隐藏头部导航栏状态栏
setFullScreen 文字根据布局大小自动缩放效果
setFullScreenWidth 设置宽度match_parent
setFullScreenHeight 设置高度为match_parent
setOnWhole 设置成全局Dialog

Activity的封装

Name description Module
ActivityBase 封装了FragmentActivity与Context成员参数 RxUI
ActivityBaseLocation 封装了定位操作的Activity RxUI
ActivityCodeTool 封装了生成二维码与条形码的Activity RxFeature
ActivityScanerCode 封装了扫描二维码与条形码的Activity RxFeature
ActivityWebView 封装了可播放视频、获取网页标题并可根据内容自动适应大小WebView的Activity RxUI

功能模块介绍

RxTool(常用功能)
Name description
init RxKit库的初始化方法
getContext 获取Application的Context
delayToDo 执行延时任务
countDown 倒计时(获取验证码倒计时)
fixListViewHeight 手动计算出listView的高度,但是不再具有滚动效果
Md5 生成MD5加密32位字符串
getResIdByName 根据资源名称获取资源id
isFastClick 判断控件是否被快速点击
setEdTwoDecimal 首位小数点自动加零,最多两位小数
setEdType EditText 只允许输入数字和汉字
setEdDecimal 首位小数点自动加零
setEditNumberAuto 数字前自动补零(例如:1 格式化成 001)
setEditNumber 数字前补零(例如:1 格式化成 001)
getBackgroundHandler 获取用于后台运行的Handler
RxActivityTool(Activity相关)
Name description
addActivity 添加Activity 到栈
currentActivity 获取当前的Activity(堆栈中最后一个压入的)
finishActivity 结束当前Activity(堆栈中最后一个压入的)
finishAllActivity 结束所有的Activity
AppExit 退出当前APP
getActivityStack 获取Activity栈
单个Activity操作
isExistActivity 判断是否存在指定Activity
launchActivity 打开指定的Activity
skipActivity 跳转到指定Activity
skipActivityAndFinish 跳转到指定Activity并关闭当前Activity
skipActivityAndFinishAll 跳转后Finish之前所有的Activity
skipActivityForResult activityForResult封装
getLauncherActivity 获取launcher activity
RxAnimationTool(动画相关)
Name description
animationColorGradient 颜色渐变动画
cardFilpAnimation 卡片翻转动画
zoomIn 缩小动画
zoomOut 放大动画
RxAppTool(应用相关)
Name description
InstallAPK 安装APK
installApp 安装App(支持7.0)
installAppSilent 静默安装App
uninstallApp 卸载App
uninstallAppSilent 静默卸载App
isAppRoot 判断App是否有root权限
launchApp 打开App
getAppPackageName 获取App包名
getAppDetailsSettings 获取App具体设置
getAppName 获取App名称
getAppIcon 获取App图标
getAppPath 获取App路径
getAppVersionName 获取App版本号
getAppVersionCode 获取App版本码
isSystemApp 判断App是否是系统应用
isAppDebug 判断App是否是Debug版本
getAppSignature 获取App签名
getAppSignatureSHA1 获取应用签名的的SHA1值
isInstallApp 判断App是否安装
getAppInfo 获取当前App信息
getBean 得到AppInfo的Bean
getAllAppsInfo 获取所有已安装App信息
isAppBackground 判断当前App处于前台还是后台
RxBarTool(状态栏相关)
Name description
setTransparentStatusBar 设置透明状态栏(api大于19方可使用)
hideStatusBar 隐藏状态栏
noTitle 隐藏Title
FLAG_FULLSCREEN 设置全屏
getStatusBarHeight 获取状态栏高度
isStatusBarExists 判断状态栏是否存在
getActionBarHeight 获取ActionBar高度
showNotificationBar 显示通知栏
hideNotificationBar 隐藏通知栏
invokePanels 反射唤醒通知栏
RxBroadcastTool(广播工具类)
Name description
BroadcastReceiverNetWork 监听网络状态改变的广播
initRegisterReceiverNetWork 注册监听网络状态的广播
RxCameraTool(摄像机相关)
Name description
openFlashLight 打开闪光灯
closeFlashLight 关闭闪光灯
RxClipboardTool(剪贴板相关)
Name description
copyText 复制文本到剪贴板
getText 获取剪贴板的文本
copyUri 复制uri到剪贴板
getUri 获取剪贴板的uri
copyIntent 复制意图到剪贴板
getIntent 获取剪贴板的意图
RxConstTool(常量相关)
Name description
存储相关常量
BYTE Byte与Byte的倍数
KB KB与Byte的倍数
MB MB与Byte的倍数
GB GB与Byte的倍数
时间相关常量
MSEC 毫秒与毫秒的倍数
SEC 秒与毫秒的倍数
MIN 分与毫秒的倍数
HOUR 时与毫秒的倍数
DAY 天与毫秒的倍数
正则相关常量
REGEX_MOBILE_SIMPLE 手机号(简单)
REGEX_MOBILE_EXACT 手机号(精确)
REGEX_TEL 电话号码
REGEX_IDCARD15 身份证号码15位
REGEX_IDCARD18 身份证号码18位
REGEX_EMAIL 邮箱
REGEX_URL URL
REGEX_CHZ 汉字
REGEX_USERNAME 用户名,取值范围为a-z,A-Z,0-9,"",汉字,不能以""结尾,用户名必须是6-20位
REGEX_DATE yyyy-MM-dd格式的日期校验,已考虑平闰年
REGEX_IP IP地址
RxDataTool(数据处理相关)
Name description
数据的判断
isNullString 判断字符串是否为空 为空即true
isEmpty 判断对象是否为空 为空即true
isInteger 判断字符串是否是整数
isDouble 判断字符串是否是浮点数
isNumber 判断字符串是否是数字
getAstro 根据日期判断星座
数据的转换
stringToInt 字符串转换成整数 ,转换失败将会 return 0;
stringToLong 字符串转换成long ,转换失败将会 return 0;
stringToDouble 字符串转换成double ,转换失败将会 return 0;
simpleDateFormat 将date转换成format格式的日期
Date2Timestamp 将日期字符串 按照 指定的格式 转换成 DATE
getDate 时间戳 转换成 指定格式的日期
string2Timestamp 将 yyyy年MM月dd日 转换成 时间戳
getCurrentDateTime 获取当前日期时间 / 得到今天的日期
getYestoryDate 得到昨天的日期
formatTime 视频时间 转换成 "mm:ss"
formatSeconds "mm:ss" 转换成 视频时间
getDaysByYearMonth 根据年 月 获取对应的月份 天数
StringToInputStream 字符串转InputStream
upperFirstLetter 首字母大写
lowerFirstLetter 首字母小写
reverse 反转字符串
toDBC 转化为半角字符
toSBC 转化为全角字符
oneCn2ASCII 单个汉字转成ASCII码
oneCn2PY 单个汉字转成拼音
getPYFirstLetter 获得第一个汉字首字母
cn2PY 中文转拼音
bytes2HexString byteArr转hexString
hexString2Bytes hexString转byteArr
hex2Dec hexChar转int
chars2Bytes charArr转byteArr
bytes2Chars byteArr转charArr
byte2Size 字节数转以unit为单位的size
size2Byte 以unit为单位的size转字节数
byte2FitSize 字节数转合适大小
input2OutputStream inputStream转outputStream
output2InputStream outputStream转inputStream
inputStream2Bytes inputStream转byteArr
bytes2InputStream byteArr转inputStream
outputStream2Bytes outputStream转byteArr
bytes2OutputStream outputStream转byteArr
inputStream2String inputStream转string按编码
string2InputStream string转inputStream按编码
outputStream2String outputStream转string按编码
string2OutputStream string转outputStream按编码
RxDeviceTool(设备工具类)
Name description
设备屏幕相关
getScreenHeight 得到屏幕的高
getScreenWidth 得到屏幕的宽
getScreenWidths 得到设备屏幕的宽度
getScreenHeights 得到设备屏幕的高度
getScreenDensity 得到设备的密度
显示屏幕相关
setLandscape 设置屏幕为横屏
setPortrait 设置屏幕为竖屏
isLandscape 判断是否横屏
isPortrait 判断是否竖屏
getScreenRotation 获取屏幕旋转角度
captureWithStatusBar 获取当前屏幕截图,包含状态栏
captureWithoutStatusBar 获取当前屏幕截图,不包含状态栏
getDisplayMetrics 获取DisplayMetrics对象
isScreenLock 判断是否锁屏
硬件信息相关
getUniqueSerialNumber 获取手机唯一标识序列号
getIMEI 获取设备的IMEI
getIMSI 获取设备的IMSI
getDeviceSoftwareVersion 获取设备的软件版本号
getLine1Number 获取手机号
getNetworkCountryIso 获取ISO标准的国家码,即国际长途区号
getNetworkOperator 获取设备的 MCC + MNC
getNetworkOperatorName 获取(当前已注册的用户)的名字
getNetworkType 获取当前使用的网络类型
getPhoneType 获取手机类型
getSimCountryIso 获取SIM卡的国家码
getSimOperator 获取SIM卡提供的移动国家码和移动网络码.5或6位的十进制数字
getSimOperatorName 获取服务商名称
getSimSerialNumber 获取SIM卡的序列号
getSimState 获取SIM的状态信息
getSubscriberId 获取唯一的用户ID
getVoiceMailNumber 获取语音邮件号码
getAndroid_id 获取ANDROID ID
getBuildBrandModel 获取设备型号,如MI2SC
getBuildBrand 获取设备品牌名称
getBuildMANUFACTURER 获取设备厂商,如Xiaomi
getSerialNumber 获取序列号
getAppVersionNo 获取App版本号
getAppVersionName 获取App版本名称
checkPermission 检查权限
getDeviceInfo 获取设备信息
ThroughArray 遍历LOG输出HashMap
getMacAddress 获取设备MAC地址
手机操作相关
isPhone 判断设备是否是手机
getPhoneStatus 获取手机状态信息
dial 跳至填充好phoneNumber的拨号界面
callPhone 拨打电话
sendSms 发送短信
getAllContactInfo 获取手机联系人
getContantNum 打开手机联系人界面点击联系人后便获取该号码
getAllSMS 获取手机短信并保存到xml中
RxEncodeTool(编码解码相关工具类)
Name description
urlEncode URL编码
urlDecode URL解码
base64Encode Base64编码
base64Encode2String Base64编码
base64Decode Base64解码
base64UrlSafeEncode Base64URL安全编码
htmlEncode Html编码
htmlDecode Html解码
RxEncryptTool(加密解密相关的工具类)
Name description
哈希加密相关
encryptMD2ToString MD2加密
encryptMD2 MD2加密
encryptMD5ToString MD5加密
encryptMD5 MD5加密
encryptMD5File2String MD5加密文件
encryptMD5File MD5加密文件
encryptSHA1ToString SHA1加密
encryptSHA1 SHA1加密
encryptSHA224ToString SHA224加密
encryptSHA224 SHA224加密
encryptSHA256ToString SHA256加密
encryptSHA256 SHA256加密
encryptSHA384ToString SHA384加密
encryptSHA384 SHA384加密
encryptSHA512ToString SHA512加密
encryptSHA512 SHA512加密
encryptAlgorithm 对data进行algorithm算法加密
DES加密相关
DESTemplet DES加密
encryptDES DES加密
encryptDES2Base64 DES加密后转为Base64编码
encryptDES2HexString DES加密后转为16进制
decryptBase64DES DES解密Base64编码密文
decryptHexStringDES DES解密16进制密文
decryptDES DES解密
3DES加密相关
encrypt3DES2Base64 3DES加密后转为Base64编码
encrypt3DES2HexString 3DES加密后转为16进制
encrypt3DES 3DES加密
decryptBase64_3DES 3DES解密Base64编码密文
decryptHexString3DES 3DES解密16进制密文
decrypt3DES 3DES解密
AES加密相关
encryptAES2Base64 AES加密后转为Base64编码
encryptAES2HexString AES加密后转为16进制
encryptAES AES加密
decryptBase64AES AES解密Base64编码密文
decryptHexStringAES AES解密16进制密文
decryptAES AES解密
RxExifTool(图片信息操作相关)
Name description
writeLatLonIntoJpeg 将经纬度信息写入JPEG图片文件里
RxFileTool(文件操作相关)
Name description
SD卡操作
getRootPath 得到SD卡根目录
getCecheFolder 获取本应用图片缓存目录
isSDCardEnable 判断SD卡是否打开
getSDCardPath 获取SD卡路径
getDataPath 获取SD卡Data路径
getFreeSpace 获取SD卡剩余空间
sdCardIsAvailable SD卡是否可用
文件操作
fileExists 文件或者文件夹是否存在
delAllFile 删除指定文件夹下所有文件, 不保留文件夹.
copy 文件复制(文件路径)
copyFile 复制文件(文件/InputStream流)
copyFolder 复制整个文件夹内
renameFile 重命名文件
getSDCardAvailaleSize 获取磁盘可用空间
getDirSize 获取某个目录可用大小
getFileAllSize 获取文件或者文件夹大小
initFile 创建一个文件
initDirectory 创建一个文件夹
saveFile 保存InputStream流到文件
saveFileUTF8 用UTF8保存一个文件
getFileUTF8 用UTF8读取一个文件
getFileIntent 得到一个文件Intent
getDiskCacheDir 获取缓存目录
getDiskFileDir 获取缓存视频文件目录
mergeFiles 多个文件拼接合并
getNativeM3u 将在线的m3u8替换成本地的m3u8
write 将字符串 保存成 文件
TextToFile 传入文件名以及字符串, 将字符串信息保存到文件中
GetAllFileName 获取 搜索的路径 下的 所有 后缀 的文件
readFileByLines 以行为单位读取文件,常用于读面向行的格式化文件
getFileByPath 根据文件路径获取文件
isFileExists 判断文件是否存在
isDir 判断是否是目录
isFile 判断是否是文件
createOrExistsDir 判断目录是否存在,不存在则判断是否创建成功
createOrExistsFile 判断文件是否存在,不存在则判断是否创建成功
createFileByDeleteOldFile 判断文件是否存在,存在则在创建之前删除
copyOrMoveDir 复制或移动目录
copyOrMoveFile 复制或移动文件
copyDir 复制目录
copyFile 复制文件
moveDir 移动目录
moveFile 移动文件
deleteDir 删除目录
deleteFile 删除文件
listFilesInDir 获取目录下所有文件
listFilesInDirWithFilter 获取目录下所有后缀名为suffix的文件
searchFileInDir 获取目录下指定文件名的文件包括子目录
writeFileFromIS 将输入流写入文件
writeFileFromString 将字符串写入文件
readFile2List 指定编码按行读取文件到List
readFile2String 指定编码按行读取文件到字符串中
readFile2Bytes 指定编码按行读取文件到字符数组中
getFileCharsetSimple 简单获取文件编码格式
getFileLines 获取文件行数
getFileSize 获取文件大小
getFileMD5 获取文件的MD5校验码
closeIO 关闭IO
getDirName 获取全路径中的最长目录
getFileName 获取全路径中的文件名
getFileNameNoExtension 获取全路径中的不带拓展名的文件名
getFileExtension 获取全路径中的文件拓展名
清除数据
cleanInternalCache 清除内部缓存
cleanInternalFiles 清除内部文件
cleanInternalDbs 清除内部数据库
cleanInternalDbByName 根据名称清除数据库
cleanInternalSP 清除内部SP
cleanExternalCache 清除外部缓存
cleanCustomCache 清除自定义目录下的文件
RxFragmentTool(Fragment操作相关)
Name description
showFragment 显示当前Fragment
RxImageTool(图像操作相关)
Name description
单位转换
dp2px dp转px
dip2px dip转px
px2dp px转dp
px2dip px转dip
sp2px sp转px
px2sp px转sp
图片处理相关
bitmap2Bytes bitmap转byteArr
bytes2Bitmap byteArr转bitmap
drawable2Bitmap drawable转bitmap
bitmap2Drawable bitmap转drawable
drawable2Bytes drawable转byteArr
bytes2Drawable byteArr转drawable
calculateInSampleSize 计算采样大小
getBitmap 从文件/InputStream流/resId中获取bitmap
scale 缩放图片
clip 裁剪图片
skew 倾斜图片
rotate 旋转图片
getRotateDegree 获取图片旋转角度
toRound 转为圆形图片
toRoundCorner 转为圆角图片
fastBlur 快速模糊
renderScriptBlur renderScript模糊图片(API大于17)
stackBlur stack模糊图片
addFrame 添加颜色边框
addReflection 添加倒影
addTextWatermark 添加文字水印
addImageWatermark 添加图片水印
toAlpha 转为alpha位图
toGray 转为灰度图片
save 保存图片
isImage 根据文件名判断文件是否为图片
getImageType 获取图片类型
图片压缩有关
compressByScale 按缩放压缩
compressByQuality 按质量压缩
compressBySampleSize 按采样大小压缩
GetLocalOrNetBitmap 得到本地或者网络上的bitmap
getColorByInt 将16进制的颜色转化成10进制
FilpAnimation 界面翻转动画
RxIntentTool(Intent相关)
Name description
getInstallAppIntent 获取安装App(支持7.0)的意图
getUninstallAppIntent 获取卸载App的意图
getLaunchAppItent 获取打开App的意图
getAppInfoIntent 获取App信息的意图
getShareInfoIntent 获取App信息分享的意图
getIntentByPackageName 根据包名获取意图
getComponentNameIntent 获取其他应用的Intent
RxKeyboardTool(键盘相关)
Name description
hideSoftInput 动态隐藏软键盘
showSoftInput 动态显示软键盘
toggleSoftInput 切换键盘显示与否状态
RxLocationTool(定位相关)
Name description
isGpsEnabled 判断Gps是否可用
isLocationEnabled 判断定位是否可用
openGpsSettings 打开Gps设置界面
registerLocation 注册Location
unRegisterLocation 注销Location
getAddress 根据经纬度获取地理位置
getCountryName 根据经纬度获取所在国家
getLocality 根据经纬度获取所在地
getStreet 根据经纬度获取所在街道
gpsToDegree GPS坐标 转换成 角度(例如 113.202222 转换成 113°12′8″)
GPS84ToGCJ02 国际 GPS84 坐标系 转换成 [国测局坐标系] 火星坐标系 (GCJ-02)
GCJ02ToGPS84 [国测局坐标系] 火星坐标系 (GCJ-02) 转换成 国际 GPS84 坐标系
GCJ02ToBD09 火星坐标系 (GCJ-02) 转换成 百度坐标系 (BD-09)
BD09ToGCJ02 百度坐标系 (BD-09) 转换成 火星坐标系 (GCJ-02)
BD09ToGPS84 百度坐标系 (BD-09) 转换成 国际 GPS84 坐标系
outOfChina 判断经纬度是否在**范围内
RxNetTool(网络相关)
Name description
ping 判断是否有外网连接
isWifiEnabled 判断WIFI是否打开
is3rd 判断是否为3G网络
isWifi 判断网络连接方式是否为WIFI
isNetworkAvailable 判断网络连接是否可用
isGpsEnabled GPS是否打开
getNetWork 获取当前网络状态
openWirelessSettings 打开网络设置界面
getActiveNetworkInfo 获取活动网络信息
isAvailable 判断网络是否可用
isConnected 判断网络是否连接
is4G 判断网络是否是4G
isWifiConnected 判断wifi是否连接状态
getNetworkOperatorName 获取移动网络运营商名称
getPhoneType 获取移动终端类型
getNetWorkType 获取当前的网络类型
getNetWorkTypeName 获取当前的网络类型名称
RxPermissionsTool(权限请求操作工具类)
Name description
addPermission 添加权限
initPermission 请求权限
RxPhotoTool(图片获取相关)
Name description
openCameraImage 调用系统相机
openLocalImage 调用系统相册
cropImage 裁剪图片
createImagePathUri 创建一条图片地址uri,用于保存拍照后的照片
getRealFilePath 获取图片uri的真实文件地址
RxPictureTool(拍照相关)
Name description
getOpenCameraIntent 获取打开照程序界面的Intent
getImagePickerIntent 获取[跳转至相册选择界面,并跳转至裁剪界面,可以指定是否缩放裁剪区域]的Intent
getCameraIntent 获取[跳转至相册选择界面,并跳转至裁剪界面,默认可缩放裁剪区域]的Intent
getCropImageIntent 获取[跳转至裁剪界面]的Intent
getChoosedImage 获得选中相册的图片
getChoosedImagePath 获得选中相册的图片路径
getTakePictureFile 获取拍照之后的照片文件(JPG格式)
RxProcessTool(进程相关)
Name description
getForegroundProcessName 获取前台线程包名
getAllBackgroundProcesses 获取后台服务进程
killAllBackgroundProcesses 杀死所有后台服务进程
killBackgroundProcesses 杀死后台服务进程
RxRegTool(正则判断相关)
Name description
正则判断
isMobile 判断是否为真实手机号
isMobileSimple 验证手机号(简单)
isMobileExact 验证手机号(精确)
isTel 验证电话号码
isBankCard 验证银卡卡号
validateIdCard 15位和18位身份证号码的正则表达式 身份证验证
isIDCard15 验证身份证号码15位
isIDCard18 验证身份证号码18位
isEmail 验证邮箱
isURL 验证URL
isChz 验证汉字
isUsername 验证用户名
isDate 验证yyyy-MM-dd格式的日期校验,已考虑平闰年
isIP 验证IP地址
isMatch string是否匹配regex
stringFormat String.Format方法的封装
hideMobilePhone 隐藏手机中间4位号码
formatCard 格式化银行卡 隐藏中间8位号码
formatCardEndFour 获取银行卡后四位
format2Decimals 将字符串格式化为带两位小数的字符串
RxServiceTool(Service相关)
Name description
isRunningService 获取服务是否开启
RxShellTool(Shell相关)
Name description
isRoot 判断设备是否root
execCmd 是否是在root下执行命令
RxSPTool(SharedPreferences相关)
Name description
putContent 单条方式存入SharedPreferences
getContent 获取标记为tag的值
putJSONCache 存放JSON缓存数据
readJSONCache 读取JSON缓存数据
clearPreference 清除指定的信息(若为null 则删除name下所有的键值)
RxThreadPoolTool(线程池相关工具类)
Name description
RxThreadPoolTool ThreadPoolTool构造函数
execute 在未来某个时间执行给定的命令(链表)
shutDown 待以前提交的任务执行完毕后关闭线程池
shutDownNow 试图停止所有正在执行的活动任务
isShutDown 判断线程池是否已关闭
isTerminated 关闭线程池后判断所有任务是否都已完成
awaitTermination 请求关闭、发生超时或者当前线程中断
submit 提交一个Runnable任务用于执行
invokeAll 执行给定的任务
invokeAny 执行给定的任务
schedule 延迟执行Runnable命令
scheduleWithFixedRate 延迟并循环执行命令
scheduleWithFixedDelay 延迟并以固定休息时间循环执行命令
RxTimeTool(时间相关)
Name description
milliseconds2String 将时间戳转为时间字符串
string2Milliseconds 将时间字符串转为时间戳
string2Date 将时间字符串转为Date类型
date2String 将Date类型转为时间字符串
date2Milliseconds 将Date类型转为时间戳
milliseconds2Date 将时间戳转为Date类型
milliseconds2Unit 毫秒时间戳单位转换
getIntervalTime 获取两个时间差
getCurTimeMills 获取当前时间戳
getCurTimeString 获取当前时间字符串
getCurTimeDate 获取当前时间
getIntervalByNow 获取与当前时间的差
isLeapYear 判断闰年
RxZipTool(压缩相关)
Name description
zipFiles 批量压缩文件
zipFile 压缩文件
unzipFiles 批量解压文件
unzipFile 解压文件
unzipFileByKeyword 解压带有关键字的文件
getFilesPath 获取压缩文件中的文件路径链表
getComments 获取压缩文件中的注释链表
getEntries 获取压缩文件中的文件对象

支付工具类

支付宝支付:

    AliPayTools.aliPay(mContext,
        APP_ID,//支付宝分配的APP_ID
        isRSA2,//是否是 RSA2 加密
        RSA_PRIVATE,// RSA 或 RSA2 字符串
        new AliPayModel(order_id,//订单ID (唯一)
                        money,//价格
                        name,//商品名称
                        detail),//商品描述详情 (用于显示在 支付宝 的交易记录里)
        new onRequestListener() {
            @Override
            public void onSuccess(String s) {RxToast.success("支付成功");}

            @Override
            public void onError(String s) {RxToast.error("支付失败");
        }
    });

微信支付:

第一种情景: 支付操作全部在APP端完成(包括统一下单接口) 即支付过程无后台参与

    WechatPayTools.wechatPayUnifyOrder(mContext,
        WX_APP_ID, //微信分配的APP_ID
        WX_PARTNER_ID, //微信分配的 PARTNER_ID (商户ID)
        WX_PRIVATE_KEY, //微信分配的 PRIVATE_KEY (私钥)
        new WechatModel(order_id, //订单ID (唯一)
                        money, //价格
                        name, //商品名称
                        detail), //商品描述详情
        new onRequestListener() {
            @Override
            public void onSuccess(String s) {}

            @Override
            public void onError(String s) {}
    });

第二种情景: 从后台获取到 prepayid(预支付订单ID) 之后,在App端进行支付操作

    wechatPayApp(mContext,
        app_id, //微信分配的APP_ID
        partner_id, //微信分配的 PARTNER_ID (商户ID)
        wx_private_key, //微信分配的 PRIVATE_KEY (私钥)
        prepay_id, //订单ID (唯一)
        new onRequestListener() {
            @Override
            public void onSuccess(String s) {}

            @Override
            public void onError(String s) {}
    });

微信分享:

分享网页

    WechatShareTools.init(mContext, WX_APP_ID);//初始化

    String url = "https://github.com/vondear/RxTool";//网页链接

    String description = "工欲善其事必先利其器!";//描述

    Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.ic_launcher);//获取Bitmap
    byte[] bitmapByte = RxImageTool.bitmap2Bytes(bitmap, Bitmap.CompressFormat.PNG);//将 Bitmap 转换成 byte[]

    mWechatShareModel = new WechatShareModel(url, "APP名称", description, bitmapByte);

    //Friend 分享微信好友,Zone 分享微信朋友圈,Favorites 分享微信收藏
    WechatShareTools.shareURL(mWechatShareModel, WechatShareTools.SharePlace.Friend);//分享操作

Demo介绍

RxPhotoTool操作UCrop裁剪图片
展示头像 选择头像 裁剪头像
二维码与条形码的扫描与生成
扫描二维码 生成二维码 扫描条形码
常用的Dialog展示
确认弹窗 确认取消弹窗 输入框弹窗
选择日期弹窗 形状加载弹窗 Acfun加载弹窗
其他功能展示
WebView的封装(可播放视频) RxTextTool操作Demo RxToast的展示使用
进度条的艺术 网速控件 联系人侧边栏快速导航
图片的缩放艺术 蛛网控件 仿斗鱼验证码控件

DEMO 与 打赏

Demo 打赏
RxTool
扫描二维码 如果你帮助到了你
可以点右上角"Star"支持一下 谢谢!^_^
你也还可以扫描下面的二维码打赏鼓励一下~
请作者喝一杯咖啡。
点击二维码 下载 如果在捐赠留言中备注名称
将会被记录到列表中~
如果你也是github开源作者
捐赠时可以留下github项目地址或者个人主页地址
链接将会被添加到列表中起到互相推广的作用
闲聊群
435644020
捐赠列表