AndroidUtilCode 是一个强大易用的安卓工具类库,它合理地封装了安卓开发中常用的函数,具有完善的 Demo 和单元测试,利用其封装好的 APIs 可以大大提高开发效率,如今它主要包括两部分模块,其一是主工具类模块:utilcode,其中的工具类是开发中常用到的;其二是子工具类模块:subutil,它包含的工具类并不是很常用,它的出现是为了防止主工具类的臃肿。
Documentation
utilcode使用:
Gradle: implementation 'com.blankj:utilcode:1.23.5'
APIs
Activity 相关 -> ActivityUtils.java -> Demo
getActivityByView : 根据视图获取 Activity
getActivityByContext : 根据上下文获取 Activity
isActivityExists : 判断 Activity 是否存在
startActivity : 启动 Activity
startActivityForResult : 启动 Activity 为返回结果
startActivities : 启动多个 Activity
startHomeActivity : 回到桌面
getActivityList : 获取 Activity 栈链表
getLauncherActivity : 获取启动项 Activity
getTopActivity : 获取栈顶 Activity
isActivityExistsInStack : 判断 Activity 是否存在栈中
finishActivity : 结束 Activity
finishToActivity : 结束到指定 Activity
finishOtherActivities : 结束所有其他类型的 Activity
finishAllActivities : 结束所有 Activity
finishAllActivitiesExceptNewest: 结束除最新之外的所有 Activity
AdaptScreen 相关 -> AdaptScreenUtils.java -> Demo
adaptWidth : 适配宽度
adaptHeight: 适配高度
closeAdapt : 关闭适配(pt 等同于 dp)
pt2Px : pt 转 px
px2Pt : px 转 pt
AntiShake 相关 -> AntiShakeUtils.java
isValid: 是否有效
App 相关 -> AppUtils.java -> Demo
registerAppStatusChangedListener : 注册 App 前后台切换监听器
unregisterAppStatusChangedListener: 注销 App 前后台切换监听器
installApp : 安装 App(支持 8.0)
installAppSilent : 静默安装 App
uninstallApp : 卸载 App
uninstallAppSilent : 静默卸载 App
isAppInstalled : 判断 App 是否安装
isAppRoot : 判断 App 是否有 root 权限
isAppDebug : 判断 App 是否是 Debug 版本
isAppSystem : 判断 App 是否是系统应用
isAppForeground : 判断 App 是否处于前台
launchApp : 打开 App
relaunchApp : 重启 App
launchAppDetailsSettings : 打开 App 具体设置
exitApp : 关闭应用
getAppIcon : 获取 App 图标
getAppPackageName : 获取 App 包名
getAppName : 获取 App 名称
getAppPath : 获取 App 路径
getAppVersionName : 获取 App 版本号
getAppVersionCode : 获取 App 版本码
getAppSignature : 获取 App 签名
getAppSignatureSHA1 : 获取应用签名的的 SHA1 值
getAppSignatureSHA256 : 获取应用签名的的 SHA256 值
getAppSignatureMD5 : 获取应用签名的的 MD5 值
getAppInfo : 获取 App 信息
getAppsInfo : 获取所有已安装 App 信息
getApkInfo : 获取 Apk 信息
栏相关 -> BarUtils.java -> Demo
getStatusBarHeight : 获取状态栏高度(px)
setStatusBarVisibility : 设置状态栏是否可见
isStatusBarVisible : 判断状态栏是否可见
setStatusBarLightMode : 设置状态栏是否为浅色模式
addMarginTopEqualStatusBarHeight : 为 view 增加 MarginTop 为状态栏高度
subtractMarginTopEqualStatusBarHeight: 为 view 减少 MarginTop 为状态栏高度
setStatusBarColor : 设置状态栏颜色
setStatusBarColor4Drawer : 为 DrawerLayout 设置状态栏颜色
getActionBarHeight : 获取 ActionBar 高度
setNotificationBarVisibility : 设置通知栏是否可见
getNavBarHeight : 获取导航栏高度
setNavBarVisibility : 设置导航栏是否可见
isNavBarVisible : 判断导航栏是否可见
setNavBarColor : 设置导航栏颜色
getNavBarColor : 获取导航栏颜色
isSupportNavBar : 判断是否支持导航栏
亮度相关 -> BrightnessUtils.java -> Demo
isAutoBrightnessEnabled : 判断是否开启自动调节亮度
setAutoBrightnessEnabled: 设置是否开启自动调节亮度
getBrightness : 获取屏幕亮度
setBrightness : 设置屏幕亮度
setWindowBrightness : 设置窗口亮度
getWindowBrightness : 获取窗口亮度
Bus 相关 -> BusUtils.java -> README
post: 发送
磁盘缓存相关 -> CacheDiskStaticUtils.java -> Test
setDefaultCacheDiskUtils: 设置默认磁盘缓存实例
put : 缓存中写入数据
getBytes : 缓存中读取字节数组
getString : 缓存中读取 String
getJSONObject : 缓存中读取 JSONObject
getJSONArray : 缓存中读取 JSONArray
getBitmap : 缓存中读取 Bitmap
getDrawable : 缓存中读取 Drawable
getParcelable : 缓存中读取 Parcelable
getSerializable : 缓存中读取 Serializable
getCacheSize : 获取缓存大小
getCacheCount : 获取缓存个数
remove : 根据键值移除缓存
clear : 清除所有缓存
磁盘缓存相关 -> CacheDiskUtils.java -> Test
getInstance : 获取缓存实例
Instance.put : 缓存中写入数据
Instance.getBytes : 缓存中读取字节数组
Instance.getString : 缓存中读取 String
Instance.getJSONObject : 缓存中读取 JSONObject
Instance.getJSONArray : 缓存中读取 JSONArray
Instance.getBitmap : 缓存中读取 Bitmap
Instance.getDrawable : 缓存中读取 Drawable
Instance.getParcelable : 缓存中读取 Parcelable
Instance.getSerializable: 缓存中读取 Serializable
Instance.getCacheSize : 获取缓存大小
Instance.getCacheCount : 获取缓存个数
Instance.remove : 根据键值移除缓存
Instance.clear : 清除所有缓存
二级缓存相关 -> CacheDoubleStaticUtils.java -> Test
setDefaultCacheDoubleUtils: 设置默认二级缓存实例
put : 缓存中写入数据
getBytes : 缓存中读取字节数组
getString : 缓存中读取 String
getJSONObject : 缓存中读取 JSONObject
getJSONArray : 缓存中读取 JSONArray
getBitmap : 缓存中读取 Bitmap
getDrawable : 缓存中读取 Drawable
getParcelable : 缓存中读取 Parcelable
getSerializable : 缓存中读取 Serializable
getCacheDiskSize : 获取磁盘缓存大小
getCacheDiskCount : 获取磁盘缓存个数
getCacheMemoryCount : 获取内存缓存个数
remove : 根据键值移除缓存
clear : 清除所有缓存
二级缓存相关 -> CacheDoubleUtils.java -> Test
getInstance : 获取缓存实例
Instance.put : 缓存中写入数据
Instance.getBytes : 缓存中读取字节数组
Instance.getString : 缓存中读取 String
Instance.getJSONObject : 缓存中读取 JSONObject