日常的开发中,我们肯定会编写一些重复性的代码,想要复用的话,我们可以封装成工具类。这篇博客分享一下项目当中经常遇到的工具类开源库——AndroidUtilCode
。
AndroidUtilCode依赖
AndroidX版本的依赖:
implementation 'com.blankj:utilcodex:1.31.0'
普通版本:
implementation 'com.blankj:utilcode:1.30.6'
Activity
Activity相关的工具类——ActivityUtils
addActivityLifecycleCallbacks : 增加 Activity 生命周期监听
removeActivityLifecycleCallbacks: 移除 Activity 生命周期监听
getAliveActivityByContext : 根据上下文获取存活的 Activity
getActivityByContext : 根据上下文获取 Activity
isActivityExists : 判断 Activity 是否存在
startActivity : 启动 Activity
startActivityForResult : 启动 Activity 为返回结果
startActivities : 启动多个 Activity
startHomeActivity : 回到桌面
getActivityList : 获取 Activity 栈链表
getLauncherActivity : 获取启动项 Activity
getMainActivities : 获取主的 Activity 们
getTopActivity : 获取栈顶 Activity
isActivityAlive : 判断 Activity 是否存活
isActivityExistsInStack : 判断 Activity 是否存在栈中
finishActivity : 结束 Activity
finishToActivity : 结束到指定 Activity
finishOtherActivities : 结束所有其他类型的 Activity
finishAllActivities : 结束所有 Activity
finishAllActivitiesExceptNewest : 结束除最新之外的所有 Activity
App
App相关的工具类——AppUtils
registerAppStatusChangedListener : 注册 App 前后台切换监听器
unregisterAppStatusChangedListener: 注销 App 前后台切换监听器
installApp : 安装 App(支持 8.0)
uninstallApp : 卸载 App
isAppInstalled : 判断 App 是否安装
isAppRoot : 判断 App 是否有 root 权限
isAppDebug : 判断 App 是否是 Debug 版本
isAppSystem : 判断 App 是否是系统应用
isAppForeground : 判断 App 是否处于前台
isAppRunning : 判断 App 是否运行
launchApp : 打开 App
relaunchApp : 重启 App
launchAppDetailsSettings : 打开 App 具体设置
exitApp : 关闭应用
getAppIcon : 获取 App 图标
getAppPackageName : 获取 App 包名
getAppName : 获取 App 名称
getAppPath : 获取 App 路径
getAppVersionName : 获取 App 版本号
getAppVersionCode : 获取 App 版本码
getAppSignatures : 获取 App 签名
getAppSignaturesSHA1 : 获取应用签名的的 SHA1 值
getAppSignaturesSHA256 : 获取应用签名的的 SHA256 值
getAppSignaturesMD5 : 获取应用签名的的 MD5 值
getAppInfo : 获取 App 信息
getAppsInfo : 获取所有已安装 App 信息
getApkInfo : 获取 Apk 信息
isFirstTimeInstalled : 判断应用是否首次安装
颜色
颜色相关的工具类——ColorUtils
getColor : 获取颜色
setAlphaComponent: 设置颜色透明度值
setRedComponent : 设置颜色红色值
setGreenComponent: 设置颜色绿色值
setBlueComponent : 设置颜色蓝色值
string2Int : 颜色串转颜色值
int2RgbString : 颜色值转 RGB 串
int2ArgbString : 颜色值转 ARGB 串
getRandomColor : 获取随机色
isLightColor : 判断是否亮色
时间相关
时间相关的工具类——TimeUtils
getSafeDateFormat : 获取安全的日期格式
millis2String : 将时间戳转为时间字符串
string2Millis : 将时间字符串转为时间戳
string2Date : 将时间字符串转为 Date 类型
date2String : 将 Date 类型转为时间字符串
date2Millis : 将 Date 类型转为时间戳
millis2Date : 将时间戳转为 Date 类型
getTimeSpan : 获取两个时间差(单位:unit)
getFitTimeSpan : 获取合适型两个时间差
getNowMills : 获取当前毫秒时间戳
getNowString : 获取当前时间字符串
getNowDate : 获取当前 Date
getTimeSpanByNow : 获取与当前时间的差(单位:unit)
getFitTimeSpanByNow : 获取合适型与当前时间的差
getFriendlyTimeSpanByNow: 获取友好型与当前时间的差
getMillis : 获取与给定时间等于时间差的时间戳
getString : 获取与给定时间等于时间差的时间字符串
getDate : 获取与给定时间等于时间差的 Date
getMillisByNow : 获取与当前时间等于时间差的时间戳
getStringByNow : 获取与当前时间等于时间差的时间字符串
getDateByNow : 获取与当前时间等于时间差的 Date
isToday : 判断是否今天
isLeapYear : 判断是否闰年
getChineseWeek : 获取中式星期
getUSWeek : 获取美式式星期
isAm : 判断是否上午
isPm : 判断是否下午
getValueByCalendarField : 根据日历字段获取值
getChineseZodiac : 获取生肖
getZodiac : 获取星座
上面提到了工具类是我在开发中常用的,感兴趣的小伙伴可以使用看看,说不定可以提高开发效率。