百科.dev
全部条目AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
C

CommonUtilLibrary

> 编程语言
开源

快速开发工具类收集,史上最全的开发工具类,欢迎关注、分享、点赞

2.8K stars0 点赞0 次浏览
访问官网GitHub

工具介绍

快速开发工具类收集,史上最全的开发工具类,欢迎关注、分享、点赞

#
如果您觉得本项目不错的话,来个star支持下作者吧! 快速开发工具类收集,史上最全的开发工具类 [CommonUtilLibrary](https://github.com/AbrahamCaiJin/CommonUtilLibrary) [](https://github.com/AbrahamCaiJinCommonUtilLibrary) [](https://github.com/AbrahamCaiJin/CommonUtilLibrary) 常用的自定义view和第三方类库 [CommonUILibrary](https://github.com/AbrahamCaiJin/CommonUILibrary) [](https://github.com/AbrahamCaiJin/CommonUILibrary) [](https://github.com/AbrahamCaiJin/CommonUILibrary) ViewPager无限滚动循环,支持Fragment和View,可自定义 [LoopViewPager](https://github.com/AbrahamCaiJin/LoopViewPager) [](https://github.com/AbrahamCaiJin/LoopViewPager) [](https://github.com/AbrahamCaiJin/LoopViewPager) 底部导航+LinearLayout+Navigation+RecycleView+CardView+个人中心 [BottomAndShapeDemo](https://github.com/AbrahamCaiJin/BottomAndShapeDemo) [](https://github.com/AbrahamCaiJin/BottomAndShapeDemo) [](https://github.com/AbrahamCaiJin/BottomAndShapeDemo) 个人博客 [AbrahamCaiJin.github.io](https://github.com/AbrahamCaiJin/AbrahamCaiJin.github.io) [](https://github.com/AbrahamCaiJin/AbrahamCaiJin.github.io) [](https://github.com/AbrahamCaiJin/AbrahamCaiJin.github.io) 注:本项目因众多使用者反馈已较为成熟,后续不在频繁更新,作者计划在此基础上新建立鸿蒙项目,欢迎感兴趣的开发者在GitCode仓库提issue、pr,参与共建。 # API ## 银行卡管理 → [BankCheck](https://github.com/AbrahamCaiJin/CommonUtilLibrary/blob/master/CommonUtil/src/main/java/com/jingewenku/abrahamcaijin/commonutil/BankCheck.java) checkBankCard : 校验银行卡卡号是否合法 getBankCardCheckCode: 从不含校验位的银行卡卡号采用 Luhm 校验算法获得校验位 getNameOfBank : 通过银行卡的前六位确定判断银行开户行及卡种 ## SharePreference缓存数据 → [AppSharePreferenceMgr](https://github.com/AbrahamCaiJin/CommonUtilLibrary/blob/master/CommonUtil/src/main/java/com/jingewenku/abrahamcaijin/commonutil/AppSharePreferenceMgr.java) put : 保存数据的方法 get : 获取数据的方法 putImage: 保存图片到SharedPreferences getImage: 从SharedPreferences读取图片 remove : 移除某个key值已经对应的值 clear : 清除所有数据 contains: 查询某个key是否已经存在 getAll : 返回所有的键值对 ## 提供App数据清理工作的类 → [AppCleanMgr](https://github.com/AbrahamCaiJin/CommonUtilLibrary/blob/master/CommonUtil/src/main/java/com/jingewenku/abrahamcaijin/commonutil/AppCleanMgr.java) cleanInternalCache : 清除本应用内部缓存数据 cleanExternalCache : 清除本应用外部缓存数据 cleanDatabases : 清除本应用所有数据库 cleanSharedPreference: 清除本应用SharedPreference cleanDatabaseByName : 根据名字清除本应用数据库 cleanFiles : 清除本应用files文件 cleanApplicationData : 清除本应用所有的数据 getAppClearSize : 获取App应用缓存的大小 ## 缓存工具类 → [AppACache](https://github.com/AbrahamCaiJin/CommonUtilLibrary/blob/master/CommonUtil/src/main/java/com/jingewenku/abrahamcaijin/commonutil/AppACache.java) put : 保存String数据到缓存中 getAsString : 读取String数据 getAsJSONObject : 读取JSONObject数据 getAsJSONArray : 读取JSONArray数据 getAsBinary : 获取byte数据 getAsObject : 读取Serializable数据 getAsBitmap : 读取bitmap数据 getAsDrawable : 读取Drawable数据 file : 获取缓存文件 remove : 除某个key clear : 清除所有数据 ## App应用退出 → [AppExit2Back](https://github.com/AbrahamCaiJin/CommonUtilLibrary/blob/master/CommonUtil/src/main/java/com/jingewenku/abrahamcaijin/commonutil/AppExit2Back.java) exitApp: 退出App程序应用 ## 管理和回收Activity → [AppDavikActivityMgr](https://github.com/AbrahamCaiJin/CommonUtilLibrary/blob/master/CommonUtil/src/main/java/com/jingewenku/abrahamcaijin/commonutil/AppDavikActivityMgr.java) getScreenManager : 单例堆栈集合对象 removeActivity : 堆栈中销毁并移除 removeAllActivity : 栈中销毁并移除所有Act对象 currentActivity : 取当前Act对象 getCurrentActivityName: 获得当前Act的类名 addActivity : 将Act纳入推栈集合中 exitApp : 退出栈中所有Activity ## 获取App应用版本信息 → [AppApplicationMgr](https://github.com/AbrahamCaiJin/CommonUtilLibrary/blob/master/CommonUtil/src/main/java/com/jingewenku/abrahamcaijin/commonutil/AppApplicationMgr.java) getAppName : 获取本地apk的名称 getVersionName : 获取本地Apk版本名称 getVersionCode : 获取本地Apk版本号 getMetaData : 根据key获取xml中Meta的值 getAppIcon : 获取应用图标 getAppFirstInstallTime : 获取应用第一次安装日期 getAppLastUpdateTime : 获取应用更新日期 getAppSize : 获取应用大小 getAppApk : 获取应用apk文件 getAppInstaller : 获取应用的安装市场 getAppSign : 获取应用签名 getAppTargetSdkVersion : 获取应用兼容sdk getAppUid : 获取应用uid getNumCores : 获取Cpu内核数 getRootPermission : 获得root权限 getAppPermissions : 获取应用的所有权限 hasPermission : 是否有权限 isInstalled : 应用是否安装 installApk : 安装应用 uninstallApk : 卸载应用 isSystemApp : 是否是系统应用 isServiceRunning : 服务是否在运行 stopRunningService : 停止服务 killProcesses : 结束进程 runScript : 运行脚本 runApp : 启动应用 getPackageName : 获得包名 getApplicationMetaData : 获取application层级的metadata ## 软键盘管理 → [AppKeyBoardMgr](https://github.com/AbrahamCaiJin/CommonUtilLibrary/blob/master/CommonUtil/src/main/java/com/jingewenku/abrahamcaijin/commonutil/AppKeyBoardMgr.java) openKeybord : 打卡软键盘 closeKeybord : 关闭软键盘 TimerHideKeyboard: 通过定时器强制隐藏虚拟键盘 isKeybord : 输入法是否显示 hideInputMethod : 隐藏输入法 showInputMethod : 显示输入法 ## 系统日志输出工具类 → [AppLogMessageMgr](https://github.com/AbrahamCaiJin/CommonUtilLibrary/blob/master/CommonUtil/src/main/java/com/jingewenku/abrahamcaijin/commonutil/AppLogMessageMgr.java) isEnableDebug: 设置log总开关,debug模式(true:打印日志 false:不打印) i : Info日志 d : Debug日志 w : Warn日志 v : Verbose日志 e : Error日志 ###### 这里推荐使用凯子哥的日志管理工具,灰常好用,我也集成到了我的项目里面,KLog对超长字符串进行处理,保证全部的字符串都可以打印出来,再也没有了只能打印一部分的问题了,部分使用方法如下 ## 系统日志输出工具类 → [KLog](https://github.com/AbrahamCaiJin/CommonUtilLibrary/tree/master/CommonUtil/src/main/java/com/jingewenku/abrahamcaijin/commonutil/klog) init: 设置log总开关,debug模式(true:打印日志 false:不打印) a : assert日志或者打印是否执行到这里等 i : Info日志或者打印是否执行到这里等 d : Debug日志或者打印是否执行到这里等 w : Warn日志或者打印是否执行到这里等 v : Verbose日志或者打印是否执行到这里等 e : Error日志或者打印是否执行到这里等 json: 输出Json的格式字符串 xml : 输出xml的格式字符串 file: 保存到文件 ###### 更多使用方法信息点击这里查看:[KLog](http://kaizige.vip/2016/06/13/klog/) ## App网络管理 → [AppNetworkMgr](https://github.com/AbrahamCaiJin/CommonUtilLibrary/blob/master/CommonUtil/src/main/java/com/jingewenku/abrahamcaijin/commonutil/AppNetworkMgr.java) getNetworkState : 获取当前手机连接的网络类型 isNetworkConnected : 判断网络是否连接 openNetSetting : 打开网络设置界面 is3gConnected : 检测3G是否连接 getNetworkTypeName : 获取网络类型名称 getCurrentNetworkState : 获取当前网络的状态 getCurrentNetworkSubtype : 获取当前网络的具体类型 isConnectedByState : 判断当前网络是否已经连接 isConnectingByState : 判断当前网络是否正在连接 isDisconnectedByState : 判断当前网络是否已经断开 isDisconnectingByState : 判断当前网络是否正在断开 isSuspendedByState : 判断当前网络是否已经暂停 isUnknownByState : 判断当前网络是否处于未知状态中 isBluetoothByType : 判断当前网络的类型是否是蓝牙 isDummyByType : 判断当前网络的类型是否是虚拟网络 isEthernetByType : 判断当前网络的类型是否是ETHERNET isMobileByType : 判断当前网络的类型是否是移动网络 isMobileDunByType : 判断当前网络的类型是否是MobileDun isMobileHipriByType : 判断当前网络的类型是否是MobileHipri isMobileMmsByType : 判断当前网络的类型是否是MobileMms isMobileSuplByType : 判断当前网络的类型是否是MobileSupl isWifiByType : 判断当前网络的类型是否是Wifi isWimaxByType : 判断当前网络的类型是否是Wimax is1XRTTBySubtype : 判断当前网络的具体类型是否是1XRTT isCDMABySubtype : 判断当前网络的具体类型是否是CDMA(Either IS95A or IS95B) isEDGEBySubtype : 判断当前网络的具体类型是否是EDGE isEHRPDBySubtype : 判断当前网络的具体类型是否是EHRPD isEVDO_0BySubtype : 判断当前网络的具体类型是否是EVDO_0 isEVDO_ABySubtype : 判断当前网络的具体类型是否是EVDO_A isEVDO_BBySubtype : 判断当前网络的具体类型是否是EDGE isGPRSBySubtype : 判断当前网络的具体类型是否是GPRS isHSDPABySubtype : 判断当前网络的具体类型是否是HSDPA isHSPABySubtype : 判断当前网络的具体类型是否是HSPA isHSPAPBySubtype : 判断当前网络的具体类型是否是HSPAP isHSUPABySubtype : 判断当前网络的具体类型是否是HSUPA isIDENBySubtype : 判断当前网络的具体类型是否是IDEN isLTEBySubtype : 判断当前网络的具体类型是否是LTE isUMTSBySubtype : 判断当前网络的具体类型是否是UMTS isUNKNOWNBySubtype : 判断当前网络的具体类型是否是UNKNOWN isChinaMobile2G : 判断当前网络是否是中国移动2G网络 isChinaUnicom2G : 判断当前网络是否是中国联通2G网络 isChinaUnicom3G : 判断当前网络是否是中国联通3G网络 isChinaTelecom2G : 判断当前网络是否是中国电信2G网络 isChinaTelecom3G : 判断当前网络是否是中国电信3G网络 getWifiState : 获取Wifi的状态,需要ACCESS_WIFI_STATE权限 isWifiOpen : 判断Wifi是否打开,需要ACCESS_WIFI_STATE权限 setWifi : 设置Wifi,需要CHANGE_WIFI_STATE权限 isMobileNetworkOpen : 判断移动网络是否打开,需要ACCESS_NETWORK_STATE权限 getIpAddress : 获取本机IP地址 setDataEnabled : 设置数据流量状态 getWifiScanResults : 获取wifi列表 getScanResultsByBSSID : 过滤扫描结果 getWifiConnectionInfo : 获取wifi连接信息 getProxy : 获得Proxy地址 ## 手机管理工具类 → [AppPhoneMgr](https://github.com/AbrahamCaiJin/CommonUtilLibrary/blob/master/CommonUtil/src/main/java/com/jingewenku/abrahamcaijin/commonutil/AppPhoneMgr.java) getInstance : 单例对象 getSDKVersionNumber : 获取手机系统版本号 getPhoneModel : 获取手机型号 getPhoneWidth : 获取手机宽度 getPhoneHeight : 获取手机高度 getPhoneImei : 获取手机imei串号 ,GSM手机的 IMEI 和 CDMA手机的 MEID getPhoneSim : 获取手机sim卡号 getPhoneNum : 获取手机号 isSDCardMount : 判断sd卡是否挂载 getSDFreeSize : 获取sd卡剩余空间的大小 getSDAllSize : 获取sd卡空间的总大小 isTablet : 判断是否是平板 isApkInstalled : 判断一个apk是否安装 getAppPermissions : 获取应用权限 名称列表 getInstalledApp : 获取手机内安装的应用 getUserInstalledApp : 获取手机安装非系统应用 getInstalledAppInfo : 获取安装应用的信息 startAppPkg : 打开指定包名的应用 unInstallApk : 卸载指定包名的应用 callPhone : 直接呼叫指定的号码 toCallPhoneActivity : 跳转至拨号界面 sendMessage : 直接调用短信API发送信息(设置监听发送和接收状态) toSendMessageActivity: 跳转至发送短信界面(自动设置接收方的号码) toChooseContactsList : 跳转至联系人选择界面 getChoosedPhoneNumber: 获取选择的联系人的手机号码 toCameraActivity : 跳转至拍照程序界面 toImagePickerActivity: 跳转至相册选择界面 getChoosedImage : 获得选中相册的图片 openWebSite : 调用本地浏览器打开一个网页 toSettingActivity : 跳转至系统设置界面 toWIFISettingActivity: 跳转至WIFI设置界面 openPDFFile : 启动本地应用打开PDF openWordFile : 启动本地应用打开PDF openOfficeByWPS : 调用WPS打开office文档 isInstalledApp : 判断是否安装指定包名的APP isExistActivity : 判断是否存在指定的Activity getPhoneType : 获取移动终端类型 isSimCardReady : 判断sim卡是否准备好 getPhoneStatus : 获取手机状态信息 getAllSMS : 获取手机短信并保存到xml中 isGpsEnabled : Gps是否打开 ## 反射工具类 → [AppReflectionMgr](https://github.com/AbrahamCaiJin/CommonUtilLibrary/blob/master/CommonUtil/src/main/java/com/jingewenku/abrahamcaijin/commonutil/AppReflectionMgr.java) getProperty : 得到某个对象的公共属性 getStaticProperty : 得到某类的静态公共属性 invokeMethod : 执行某对象方法 invokeStaticMethod : 执行某类的静态方法 newInstance : 新建实例 isInstance : 是不是某个类的实例 getByArray : 得到数组中的某个元素 GetClassListByPackage: 得到类的集合 ## 获取本地指定资源信息 → [AppResourceMgr](https://github.com/AbrahamCaiJin/CommonUtilLibrary/blob/master/CommonUtil/src/main/java/com/jingewenku/abrahamcaijin/commonutil/AppResourceMgr.java) getStringByAssets : 根据本地Assets目录下资源名称,获取String数据信息 getListByAssets : 根据本地Assets目录下资源名称,获取List集合信息 getStringByRaw : 根据本地Raw目录下资源标识,获取String数据信息 getListByRaw : 根据本地Raw目录下资源标识,获取List集合信息 getResourceId : 根据资源名获得资源id readBytesFromAssets : 从assets目录下读取文件内容 readBytesFromRaw : 从res/raw目录下读取文件内容 readStringFromAssets : 从assets目录读取文本 readStringFromRaw : 从raw目录读取文本 getString : 获得字符串 getColor : 获得颜色 getDrawable

GitHub Issues· 0 开放

在 GitHub 查看全部

暂无开放 Issues,或尚未同步最近议题。

核心特点

  • •Java

> 标签

Java

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言