API
银行卡管理 → BankCheck
checkBankCard : 校验银行卡卡号是否合法
getBankCardCheckCode: 从不含校验位的银行卡卡号采用 Luhm 校验算法获得校验位
getNameOfBank : 通过银行卡的前六位确定判断银行开户行及卡种
SharePreference缓存数据 →AppSharePreferenceMgr
put : 保存数据的方法
get : 获取数据的方法
putImage: 保存图片到SharedPreferences
getImage: 从SharedPreferences读取图片
remove : 移除某个key值已经对应的值
clear : 清除所有数据
contains: 查询某个key是否已经存在
getAll : 返回所有的键值对
提供App数据清理工作的类 → AppCleanMgr
cleanInternalCache : 清除本应用内部缓存数据
cleanExternalCache : 清除本应用外部缓存数据
cleanDatabases : 清除本应用所有数据库
cleanSharedPreference: 清除本应用SharedPreference
cleanDatabaseByName : 根据名字清除本应用数据库
cleanFiles : 清除本应用files文件
cleanApplicationData : 清除本应用所有的数据
getAppClearSize : 获取App应用缓存的大小
缓存工具类 → AppACache
put : 保存String数据到缓存中
getAsString : 读取String数据
getAsJSONObject : 读取JSONObject数据
getAsJSONArray : 读取JSONArray数据
getAsBinary : 获取byte数据
getAsObject : 读取Serializable数据
getAsBitmap : 读取bitmap数据
getAsDrawable : 读取Drawable数据
file : 获取缓存文件
remove : 除某个key
clear : 清除所有数据
App应用退出 → AppExit2Back
exitApp: 退出App程序应用
管理和回收Activity → AppDavikActivityMgr
getScreenManager : 单例堆栈集合对象
removeActivity : 堆栈中销毁并移除
removeAllActivity : 栈中销毁并移除所有Act对象
currentActivity : 取当前Act对象
getCurrentActivityName: 获得当前Act的类名
addActivity : 将Act纳入推栈集合中
exitApp : 退出栈中所有Activity
获取App应用版本信息 → AppApplicationMgr
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 : 启动应用
软键盘管理 → AppKeyBoardMgr
openKeybord : 打卡软键盘
closeKeybord : 关闭软键盘
TimerHideKeyboard: 通过定时器强制隐藏虚拟键盘
isKeybord : 输入法是否显示
系统日志输出工具类 → AppLogMessageMgr
isEnableDebug: 设置log总开关,debug模式(true:打印日志 false:不打印)i : Info日志
d : Debug日志
w : Warn日志
v : Verbose日志
e : Error日志
这里推荐使用凯子哥的日志管理工具,灰常好用,我也集成到了我的项目里面,KLog对超长字符串进行处理,保证全部的字符串都可以打印出来,再也没有了只能打印一部分的问题了,部分使用方法如下
系统日志输出工具类 → KLog
init: 设置log总开关,debug模式(true:打印日志 false:不打印)
a : assert日志或者打印是否执行到这里等
i : Info日志或者打印是否执行到这里等
d : Debug日志或者打印是否执行到这里等
w : Warn日志或者打印是否执行到这里等
v : Verbose日志或者打印是否执行到这里等
e : Error日志或者打印是否执行到这里等
json: 输出Json的格式字符串
xml : 输出xml的格式字符串
file: 保存到文件
更多使用方法信息点击这里查看:KLog
App网络管理 → AppNetworkMgr
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连接信息
手机管理工具类 → AppPhoneMgr
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中
反射工具类 → AppReflectionMgr
getProperty : 得到某个对象的公共属性
getStaticProperty : 得到某类的静态公共属性
invokeMethod : 执行某对象方法
invokeStaticMethod : 执行某类的静态方法
newInstance : 新建实例
isInstance : 是不是某个类的实例
getByArray : 得到数组中的某个元素
GetClassListByPackage: 得到类的集合
获取本地指定资源信息 → AppResourceMgr
getStringByAssets: 根据本地Assets目录下资源名称,获取String数据信息
getListByAssets : 根据本地Assets目录下资源名称,获取List集合信息
getStringByRaw : 根据本地Raw目录下资源标识,获取String数据信息
getListByRaw : 根据本地Raw目录下资源标识,获取List集合信息
有关Android屏幕的工具类 → AppScreenMgr
getScreenWidth : 获得屏幕宽度
getScreenHeight : 获得屏幕高度
getStatusHeight : 获得状态栏的高度
getRealScreenHeight : 获取整块屏幕的高度
getNavigationAreaHeight : 获取虚拟按键区域的高度
getNavigationBarrH : 获取导航栏高度
snapShotWithStatusBar : 获取当前屏幕截图,包含状态栏
snapShotWithoutStatusBar: 获取当前屏幕截图,不包含状态栏
获取App应用系统基本信息 → AppSysMgr
getSysClientOs : 获得客户端操作系统名称
getSysSdk : 获取当前操作系统的sdk版本
getSysLanguage : 获取当前操作系统的语言
getSysModel : 获取手机型号
getSysRelease : 获取操作系统的版本号
getSysSIMSerialNum : 读取SIM卡序列号
getSysCPUSerialNum : 获取手机CPU序列号
getSysTelephonyManager : 获得电话管理实例对象
getSysTelephoneSerialNum : 读唯一的设备ID(唯一的设备ID【GSM手机的IMEI】和【CDMA手机的 MEID】,如果获取不到返回一个默认字符串)
getSysCarrier : 获取运营商信息(三大运营商)
getSysPhoneState : 获取手机状态(0:无活动 1:响铃 2:待机)
getSysPhoneLoaction : 获得手机方位
getSysDeviceSoftVersion : 获得设备的软件版本号(注:the IMEI/SV(software version) for GSM phones 不支持返回“not available”)
getSysPhoneNumber : 获得手机号
getSysSimCode : 获得SIM卡提供的移动国家码和移动网络码.5或6位的十进制数字。(注:SIM卡的状态必须是 SIM_STATE_READY(使用getSimState()判断))
getSysSimPrivatorName : 服务商名称(注:例如:中国移动、联通SIM卡的状态必须是 SIM_STATE_READY(使用getSimState()判断))
getSysUserPhoneId : 唯一的用户ID (注:例如:IMSI(国际移动用户识别码) for a GSM phone. 需要权限:READ_PHONE_STATE)
getWindowManager : 获取WindowManager对象
getSysDefaultThreadPoolSize: 获得系统配置相符的线程池大小
getSysSampleSize : 获取当前APP应用的SampleSize大小
getVibrator : 获取震动器对象
getSysLocalIpAddress : 获取手机IP地址
getAndroidID : 获取AndroidID
getIMSI : 获取设备IMSI码
getIP : 获取网络IP地址(优先获取wifi地址)getWifiIP : 获取WIFI连接下的ip地址getGPRSIP : 获取GPRS连接下的ip地址getSerial : 获取设备序列号getSIMSerial : 获取SIM序列号getMNC : 获取网络运营商 46000,46002,46007 中国移动,46001 中国联通,46003 中国电信getCarrier : 获取网络运营商:中国电信,中国移动,中国联通getModel : 获取硬件型号getBuildBrand : 获取编译厂商getBuildHost : 获取编译服务器主机getBuildTags : 获取描述Build的标签getBuildTime : 获取系统编译时间 getBuildUser : 获取系统编译作者getBuildVersionRelease : 获取编译系统版本(5.1)getBuildVersionCodename : 获取开发代号getBuildVersionIncremental : 获取源码控制版本号getBuildVersionSDK : 获取编译的SDKgetBuildID : 获取修订版本列表(LMY47D)getSupportedABIS : CPU指令集getManufacturer : 获取硬件制造厂商getBootloader : 获取系统启动程序版本号getDisplayVersion : 获取系统版本号getLanguage : 获取语言getCountry : 获取国家getOSVersion : 获取系统版本:5.1.1getGSFID : 获取GSF序列号getBluetoothMAC : 获取蓝牙地址getPsuedoUniqueID : Android设备物理唯一标识符getFingerprint : 构建标识,包括brand,name,device,version.release,id,version.incremental,type,tags这些信息getHardware :获取硬件信息getProduct :获取产品信息getDevice :获取设备信息getBoard :获取主板信息getRadioVersion :获取基带版本(无线电固件版本 Api14以上)getUA : 获取的浏览器指纹(User-Agent)getDensity : 获取得屏幕密度getGoogleAccounts : 获取google账号
自定义Toast提示框 → AppToastMgr
shortToast : 自定义Toast调用longToast : 自定义Toast调用cancelToast : 取消显示ToastToast : 默认Toast调用show : 屏幕中心位置短时间显示Toast。ToastShortBottomCenter: 屏幕底部中间位置显示短时间ToastToastShortBottomLeft : 屏幕底部左边位置短时间显示ToastToastShortBottomRight : 屏幕底部右边位置短时间显示ToastToastShortCenter : 屏幕中心位置短时间显示ToastToastShortCenterLeft : 屏幕中心左边位置短时间显示ToastToastShortCenterRight : 屏幕中心右边位置短时间显示ToastToastShortTopCenter : 屏幕顶部中心位置短时间显示ToastToastShortTopLeft : 屏幕顶部左边位置短时间显示ToastToastShortTopRight : 屏幕顶部右边位置短时间显示ToastToastLongBottomCenter : 屏幕底部中间位置显示长时间ToastToastLongBottomLeft : 屏幕底部左边位置长时间显示ToastToastLongBottomRight : 屏幕底部右边位置长时间显示ToastToastLongCenter : 屏幕中心位置长时间显示ToastToastLongCenterLeft : 屏幕中心左边位置长时间显示ToastToastLongCenterRight : 屏幕中心右边位置短时间显示ToastToastLongTopCenter : 屏幕顶部中心位置长时间显示ToastToastLongTopLeft : 屏幕顶部左边位置长时间显示ToastToastLongTopRight : 屏幕顶部右边位置长时间显示Toast
正则表达式 → AppValidationMgr
isEmpty : 验证是否为空串 (包括空格、制表符、回车符、换行符组成的字符串 若输入字符串为null或空字符串,返回true)isNotEmpty : 是否不为空isNotZero : 验证非零正整数isNumber : 验证是数字isUpChar : 验证是大写字母isLowChar : 验证是小写字母isLetter : 验证是英文字母isChinese : 验证输入汉字isRealName : 验证真实姓名isOneCode : 验证是否是条形码isEmail : 验证邮箱是否正确isPhone : 验证手机号是否正确isPlane : 验证座机号码是否正确isPostalCode : 验证邮政编码是否正确isIpAddress : 验证IP地址是否正确isURL : 验证URL地址是否正确isInteger : 验证是否是正整数isPoint : 验证是否是小数isBankNo : 验证是否银行卡号isIDCard : 验证身份证号码是否正确isPeculiarStr : 判断是否有特殊字符isUserName : 判断是否为用户名账号(规则如下:用户名由下划线或字母开头,由数字、字母、下划线、点、减号组成的4-32位字符)chineseLength : 获取字符串中文字符的长度(每个中文算2个字符)strLength : 获取字符串的长度subStringLength : 获取指定长度的字符所在位置isNumberLetter : 是否只是字母和数字isContainChinese : 是否包含中文convertStreamToString: 从输入流中获得StringcutString : 截取字符串到指定字节长度cutStringFromChar : 截取字符串从第一个指定字符strlen : 获取字节长度getSizeDesc : 获取大小的描述ip2int : ip地址转换为10进制数gainUUID : 获取UUIDphoneNoHide : 手机号码,中间4位星号替换cardIdHide : 银行卡号,保留最后4位,其他星号替换idHide : 身份证号,中间10位星号替换 checkVehicleNo : 是否为车牌号(沪A88888)
Wifi管理工具类 → AppWifiHelperMgr
isWifiEnabled : Wifi状态openWifi : 打开wificloseWifi : 关闭WifilockWifi : 锁定WiFI就是判断wifi是否建立成功,在这里使用的是held(握手) acquireunLockWifi : 解锁wificreateWifiLock: 创建一个Wifi锁,需要时调用startScan : 扫描网络getWifiList : 获取wifi列表getWifiConfigList : 获取wifi配置列表lookupScanInfo : 获取扫描WIFI列表的信息getSSID : 获取指定Wifi的ssid名称getBSSID : 获取指定Wifi的物理地址getFrequency : 获取指定Wifi的频率getCapabilities : 获取指定Wifi的功能getLevel : 获取指定Wifi的信号强度getBSSID : 获取SSIDgetCurrentNetId : 返回当前连接的网络的IDgetWifiInfo : 返回所有信息getIP : 获取IP地址addNetWordLink : 添加一个连接disableNetWordLink: 禁用一个链接removeNetworkLink : 移除一个链接hiddenSSID : 不显示SSIDdisplaySSID : 显示SSID
类型转换类 → ConvertUtils
hexStringToBytes: 十六进制字符串转换为byte数组bytesToHexString: byte数组转换为十六进制字符串charToByte : char转换为byte数组 intToByte : int转换为byte数组byteToInt : byte数组转换为intsaveDecimals : 保留几位小数nullOfString : null转StringstringToByte : String转BytestringToBoolean : String转BooleanstringToInt : String转IntstringToShort : String转ShortstringToDouble : String转DoubleintToString : Int转StringdoubleToLong : Double转LongdoubleToInt : Double转IntlongToDouble : Long转DoublelongToInt : Long转IntstringToLong : String转LonglongToString : Long转String
日期管理类 → AppDateMgr
todayYyyyMmDd : 当天的年月日todayHhMmSs : 当天的时分秒todayYyyyMmDdHhMmSs : 当天的年月日时分秒parseYyyy : 获取年parseMm : 获取月parseDd : 获取日parseYyyyMmDd : 获取年月日parseHhMmSs : 时分秒getWeekNumber : 获取星期几getWeekOfMonth : 日期中某个月份的第几周getWeekOfYear : 日期中某个年份的第几周dateTimeToTimeStamp : 将年月日时分秒转成Long类型timeStampToDateTime : 将Long类型转成年月日时分秒string2Date : 将年月日时分秒转成Date类型date2String : 将Date类型转成年月日时分秒dateIsBefore : 比较日期minutesBetweenTwoDate : 相差多少分钟getChineseZodiac : 获取日期中的生肖getZodiac : 获取日期中的星座getNowDayOffset : 获取日期getTime : 获取日期forward : 使日期倒一天isLeapYear : 判断平年闰年getDaysOfMonth : 计算某月的天数secondsMorning : 获取当天凌晨的秒数secondsNight : 获取第二天凌晨的秒数isSameDay : 判断某两天是不是同一天formatFriendly : 将日期格式化成友好的字符串:几分钟前、几小时前、几天前、几月前、几年前、刚刚formatDateTime : 将日期以yyyy-MM-dd HH:mm:ss格式化formatDateTime : 将日期以yyyy-MM-dd HH:mm:ss格式化formatDateTime : 将日期以yyyy-MM-dd HH:mm:ss格式化parseDate : 将日期字符串转成日期gainCurrentDate : 获取系统当前日期compareDate : 验证日期是否比当前日期早addDateTime : 对日期进行增加操作subDateTime : 对日期进行相减操作formatDateForExcelDate: 格式化excel中的时间formatDateForFileName : 将日期格式化作为文件名formatDateSecond : 格式化日期(精确到秒)tempDateSecond : 格式化日期(精确到秒)tempDateSecond : 格式化日期(精确到秒)formatDateDay : 格式化日期(精确到天)formatDateDetailDay : 式化日期(精确到天)formatNumber : double类型的数字保留两位小数(四舍五入)formateDate : 将字符串转换成日期parseStringToDate : 将字符日期转换成DateformatDoubleNumber : 将double日期转换成String
手机常用单位转换的辅助类 → DensityUtils
dip2px: 据手机的分辨率从 dip 的单位 转成为 px(像素)px2dip: 根据手机的分辨率从 px(像素) 的单位 转成为 dpdp2px : dp转pxsp2px : sp转pxpx2dp : px转dppx2sp : px转sp
文件管理类 → FileUtils
createFileDir : 创建目录delFile : 删除文件(若为目录,则递归删除子目录和文件)getFileSize : 取文件大小,单位为byte(若为目录,则包括所有子目录和文件)saveBitmap : 保存Bitmap到指定目录isFileExists : 判断某目录下文件是否存在isMountedSDCard : 检查是否已挂载SD卡镜像(是否存在SD卡)gainSDFreeSize : 获取SD卡剩余容量(单位Byte)gainSDAllSize : 获取SD卡总容量(单位Byte)gainSDCardPath : 获取可用的SD卡路径(若SD卡不没有挂载则返回"")readFileByLines : 以行为单位读取文件内容,一次读一整行,常用于读面向行的格式化文件saveToFile : 保存内容saveToFile : 指定编码保存内容appendToFile : 追加文本isExsit : 判断文件是否存在read : 快速读取程序应用包下的文件内容read : 读取指定目录文件的文件内容read : 以行为单位读取文件内容,一次读一整行,常用于读面向行的格式化文件readRawValue : 读取raw目录的文件内容readAssetsValue : 读取assets目录的文件内容readAssetsListValue: 读取assets目录的文件内容readShrePerface : 获取SharedPreferences文件内容writeShrePerface : 写入SharedPreferences文件内容write : 写入应用程序包files目录下文件write : 指定编码将内容写入目标文件write : 指定目录写入文件内容write : 写入文件saveAsJPEG : 指定目录写入文件内容saveAsPNG : 指定目录写入文件内容getStringFromFile : 将文件转成字符串copyFile : 复制文件copyFileFast : 快速复制shareFile : 分享文件zip : 压缩unzip : 解压formatFileSize : 格式化文件大小Stream2File : 将输入流写入到文件createFolder : 创建文件夹(支持覆盖已存在的同名文件夹)getFileName : 获取文件名rename : 重命名文件\文件夹getFolderName : 获取文件夹名称getFilesArray : 获取文件夹下所有文件openImage : 打开图片openVideo : 打开视频openURL : 打开URLdownloadFile : 下载文件upgradeApp : 通过APKURL升级应用
控件点击效果动画工具类 → ToolAnimation
addTouchDrak : 给视图添加点击效果,让背景变深addTouchLight: 给视图添加点击效果,让背景变暗
view管理类 → ViewUtils
removeSelfFromParent : 把自身从父View中移除isTouchInView : 判断触点是否落在该View上setTVUnderLine : 给TextView设置下划线showPopupWindow : 显示PopupWindowdismissPopup : 关闭PopupWindowcaptureView : 截图createViewBitmap : 截图convertViewToBitmap : 截图getActivityBitmap : 获取Activity的截图getStatusBarHeight : 获取状态栏高度getToolbarHeight : 获取工具栏高度getNavigationBarHeight : 获取导航栏高度measureView : 测量viewgetViewWidth : 获取view的宽度getViewHeight : 获取view的高度getActivity : 获取view的上下文
提供APP应用计算,算法等 -> AppCalculateMgr
distance : 两点间的距离pointTotoDegrees: 计算点a(x,y)的角度checkInRound : 点在圆内
SpannableString工具类 →SpannableStringUtils
Builder.setFlag : 设置标识Builder.setForegroundColor: 设置前景色Builder.setBackgroundColor: 设置背景色Builder.setQuoteColor : 设置引用线的颜色Builder.setLeadingMargin : 设置缩进Builder.setMargin : 设置间距Builder.setBullet : 设置列表标记Builder.setFontSize : 设置字体尺寸Builder.setFontProportion : 设置字体比例Builder.setFontXProportion: 设置字体横向比例Builder.setStrikethrough : 设置删除线Builder.setUnderline : 设置下划线Builder.setSuperscript : 设置上标Builder.setSubscript : 设置下标Builder.setBold : 设置粗体Builder.setItalic : 设置斜体Builder.setBoldItalic : 设置粗斜体Builder.setFontFamily : 设置字体系列Builder.setTypeface : 设置字体Builder.setAlign : 设置对齐Builder.setBitmap : 设置图片Builder.setDrawable : 设置图片Builder.setUri : 设置图片Builder.setResourceId : 设置图片Builder.setClickSpan : 设置点击事件Builder.setUrl : 设置超链接Builder.setBlur : 设置模糊Builder.append : 追加样式字符串Builder.create : 创建样式字符串
Snackbar工具类 → SnackbarUtils
ShortSnackbar : 短显示Snackbar,自定义颜色LongSnackbar : 长显示Snackbar,自定义颜色IndefiniteSnackbar: 自定义时常显示Snackbar,自定义颜色ShortSnackbar : 短显示Snackbar,可选预设类型LongSnackbar : 显示Snackbar,可选预设类型IndefiniteSnackbar: 自定义时常显示Snackbar,可选预设类型setSnackbarColor : 设置Snackbar背景颜色setSnackbarColor : 设置Snackbar文字和背景颜色SnackbarAddView : 向Snackbar中添加view
Picasso图片加载工具类 → PicassoUtils
getinstance : 单例对象LoadImage : 加载图片LoadImageWithWidtAndHeight: 加载图片,设置宽高,图片默认居中(centerCrop())
Glide图片加载工具类 → GlideUtils
instance : 单例对象LoadContextBitmap : Glide请求图片,会受到Context生命周期控制LoadFragmentBitmap : Glide请求图片,会受到Fragment生命周期控制LoadSupportv4FragmentBitmap : Glide请求图片,会受到support.v4.app.Fragment生命周期控制LoadContextCircleBitmap : 加载设置圆形图片LoadfragmentCircleBitmap : Glide请求图片设置圆形,会受到android.app.Fragment生命周期控制LoadSupportv4FragmentCircleBitmap: Glide请求图片设置圆形,会受到android.support.v4.app.Fragment生命周期控制LoadContextRoundBitmap : 加载设置圆角图片LoadfragmentRoundBitmap : Glide请求图片设置圆角,会受到android.app.Fragment生命周期控制LoadSupportv4FragmentRoundBitmap : Glide请求图片设置圆角,会受到android.support.v4.app.Fragment生命周期控制LoadContextBlurBitmap : Glide加载模糊图片LoadFragmentBlurBitmap : Glide加载模糊图片会受到Fragment生命周期控制LoadSupportv4FragmentBlurBitmap : Glide加载模糊图片会受到support.v4.app.Fragment生命周期控制LoadContextRotateBitmap : 旋转图片LoadFragmentRotateBitmap : Glide加载旋转图片会受到Fragment生命周期控制LoadSupportv4FragmentRotateBitmap: Glide加载旋转图片会受到support.v4.app.Fragment生命周期控制
Fresco图片加载工具类 → FrescoUtils
initConfig : 初始化配置initImagePipelineConfig: 单例init : 默认加载图片和失败图片configureCaches : 初始化配置setImageURI : 开始加载图片changeImgSize : 自定义图片尺寸loadGif : 加载gif图moreImgRequst : 多图请求需自定义ImageRequest(图片预览)localImg : 缩略图预览(仅支持本地图片,并且是JPEG图片格式)loadImage : 请求图片getImageDecodeOptions : 图片解码
图片管理工具类 → AppImageMgr
getBitmap : 根据drawable id获取BitmapgetDrawable : 根据drawable id获取DrawablebitmapToDrawble : bitmap转drawablereadDrawableBitmap : 以最省内存的方式读取本地资源的图片readDrawableBigBitmap : 读取本地drawable中较大的资源图片getBitmapFromFile : 从文件得到BitMapgetBitmapByteArray : 从数组得到BitmapgetBitmapFromStream : 从流中得到BitmapsetAlpha : 图片透明度处理getImgCacheFromLocal2Bitmap: 获取源图片的BITMAP,压缩,本地图片getBitmap2Byte : bitmap转byte[]decodeBitmapToThumbnail : 获取缩略图saveImage : 保存图片grayMasking : 光晕效果getBitmapSize : 获取bitmap的字节大小convertToBlackWhite : 将彩色图转换为黑白图convertToRoundedCorner : 转换成圆角BoxBlurFilter : 高斯模糊getCircleBitmap : 圆形图片getRoundedCornerBitmap : 获取圆角lessenBitmap : 按比例缩小图片(单位像素) lessen the bitmapreadPictureDegree : 判断图片旋转情况rotaingImageView : 旋转图片rotateBitmap : 图片旋转getBitmapFromUri : 根据uri获取图片getPicPathFromUri : 图片uri转pathgetSmallBitmap : 根据路径获得图片并压缩返回bitmap用于显示decodeBitmap : 从文件中获取图片computeSampleSize : 使用该算法,就可动态计算出图片的inSampleSizeapplyDimension : 长度单位转换
资金运算工具类 → AppBigDecimal
add : 提供精确的加法运算substract : 提供精确的减法运算multiply : 提供精确的乘法运算divide : 提供(相对)精确的除法运算.当发生除不尽的情况时,由scale参数指 定精度,以后的数字四舍五入. round : 提供精确的小数位四舍五入处理remainder : 取余数formatMoney : 金额分割,四舍五人金额compareBigDecimal: 比较大小adjustDouble : 获取自己想要的数据格式
WebService网络工具类 → WebServiceUtils
callWebService: 请求网络数据
HttpURLConnection网络工具类 →HttpURLConnectionUtils
doGetAsyn : 异步的Get请求doPostAsyn: 异步的Post请求doGet : Get请求,获得返回数据doPost : 向指定 URL 发送POST方法的请求
字符串判断工具类 → AppStringUtils
isEmpty : 判断字符串是否为空isNotEmpty : 判断str null,"","null" 均视为空checkNameChese : 检测String是否全是中文isChinese : 判定输入汉字toLowerCaseFirstOne : 将字符串的第一位转为小写toUpperCaseFirstOne : 将字符串的第一位转为大写underScoreCase2CamelCase : 下划线命名转为驼峰命名camelCase2UnderScoreCase : 驼峰命名法转为下划线命名throwable2String : 将异常栈信息转为字符串concat : 字符串连接,将参数列表拼接为一个字符串concatSpiltWith : 字符串连接,将参数列表拼接为一个字符串toASCII : 将字符串转移为ASCII码toUnicode : 将字符串转移为Unicode码toUnicodeString : 将字符串转移为Unicode码containsChineseChar : 是否包含中文字符isNumber : 参数是否是有效数字 (整数或者小数)matcherFirst : 匹配到第一个字符串isInt : 参数是否是有效整数isDouble : 字符串参数是否是doubleisBoolean : 判断一个对象是否为boolean类型,包括字符串中的true和falseisTrue : 对象是否为truecontains : 判断一个数组里是否包含指定对象toInt : 将对象转为int值,如果对象无法进行转换,则使用默认值toLong : 将对象转为long类型,如果对象无法转换,将返回默认值toDouble : 将对象转为Double,如果对象无法转换,将使用默认值splitFirst : 分隔字符串,根据正则表达式分隔字符串,只分隔首个,剩下的的不进行分隔,如: 1,2,3,4 将分隔为 [‘1‘,‘2,3,4‘]toString : 将对象转为字符串,如果对象为null,则返回null,而不是"null"toStringAndSplit : 将对象转为String后进行分割,如果为对象为空或者空字符,则返回null
Json工具类 → JsonUtils
toJson : 对象转jsonfromJson : json转对象map2Json : Map转为JSONObjectcollection2Json : 集合转换为JSONArrayobject2Json : Object对象转换为JSONArraystring2JSONObject : json字符串生成JSONObject对象object2json : 对象转换为Jsonlist2json : List集合转换为Jsonarray2json : 对象数组转换为Jsonset2json : Set集合转为Jsonstring2json : 字符串转换为Json
系统媒体管理工具类 → MediaUtil
startActivityForCamera : 进入系统拍照startActivityForGallery : 进入系统图库startActivityForImageCut : 进入系统裁剪
GPS坐标转换工具 → CoordinateTransformUtil
bd09towgs84 : 百度坐标系(BD-09)转WGS坐标(百度坐标纬度,百度坐标经度),WGS84坐标数组wgs84tobd09 : WGS坐标转百度坐标系(BD-09)(WGS84坐标系的经度,WGS84坐标系的纬度),百度坐标数组gcj02tobd09 : 火星坐标系(GCJ-02)转百度坐标系(BD-09)(火星坐标经度,火星坐标纬度),百度坐标数组bd09togcj02 : 百度坐标系(BD-09)转火星坐标系(GCJ-02)(百度坐标纬度,百度坐标经度),火星坐标数组wgs84togcj02 : WGS84转GCJ02(火星坐标系)(WGS84坐标系的经度,WGS84坐标系的纬度),火星坐标数组gcj02towgs84 : GCJ02(火星坐标系)转GPS84(火星坐标系的经度,火星坐标系纬度),WGS84坐标数组transformlat : 纬度转换transformlng : 经度转换out_of_china : 判断是否在国内,不在国内不做偏移
程序崩溃处理类 → CrashHandlerUtil
getInstance : 获取CrashHandler实例 ,单例模式init : 初始化setCrashTip : 设置程序退出时的提示信息
html标签管理类 → HtmlUtils
addHtmlRedFlag : 为给定的字符串添加HTML红色标记,当使用Html.fromHtml()方式显示到TextView 的时候其将是红色的keywordMadeRed : 将给定的字符串中所有给定的关键字标红
root权限工具类 → RootPermissionUtils
isRoot : 根据/system/bin/或/system/xbin目录下是否存在su文件判断是否已ROOT
快捷图标管理类 → ShortCutUtils
hasShortcut : 检测是否存在快捷键addShortcut : 为程序创建桌面快捷方式delShortcut : 删除程序的快捷方式
单例工具类 → SingletonUtils
getInstance : 获取单例
WebView管理类 → WebViewManager
enableAdaptive : 开启自适应功能disableAdaptive : 禁用自适应功能enableZoom : 开启缩放功能disableZoom : 禁用缩放功能enableJavaScript : 开启JavaScriptdisableJavaScript : 禁用JavaScriptenableJavaScriptOpenWindowsAutomatically : 开启JavaScript自动弹窗disableJavaScriptOpenWindowsAutomatically : 禁用JavaScript自动弹窗goBack : 返回
窗口管理类 → WindowUtils
getDisplayRotation : 获取当前窗口的旋转角度isLandscape : 当前是否是横屏isPortrait : 当前是否是竖屏dimBackground : 调整窗口的透明度 1.0f,0.5f 变暗setLandscape : 设置Activity为横屏setPortrait : 设置Activity为竖屏setActivityFullScreen : 设置全屏,要在setContentView之前调用
pull解析xml管理类 → XmlParseUtiles
getXmlList : 解析XMLgetXmlObject : 解析XMLsetXmlValue : 把xml标签的值,转换成对象里属性的值
压缩工具类 → ZipUtil
zipFiles : 批量压缩文件(夹)upZipFile : 解压缩一个文件upZipSelectedFile : 解压文件名包含传入文字的文件getEntriesNames : 获得压缩文件内文件列表getEntriesEnumeration : 获得压缩文件内压缩文件对象以取得其属性getEntryComment : 取得压缩文件对象的注释getEntryName : 取得压缩文件对象的名称zipFile : 压缩文件
Fragment管理类 → FragmentUtils
addFragment : 新增fragmentaddFragment : 新增fragmenthideAddFragment : 先隐藏后新增fragmentaddFragments : 新增多个fragmentremoveFragment : 移除fragmentremoveToFragment : 移除到指定fragmentremoveFragments : 移除同级别fragmentremoveAllFragments : 移除所有fragmentreplaceFragment : 替换fragmentpopFragment : 出栈fragmentpopToFragment : 出栈到指定fragmentpopFragments : 出栈同级别fragmentpopAllFragments : 出栈所有fragmentpopAddFragment : 先出栈后新增fragmenthideFragment : 隐藏fragmenthideFragments : 隐藏同级别fragmentshowFragment : 显示fragmenthideShowFragment : 先隐藏后显示fragmentgetLastAddFragment : 获取同级别最后加入的fragmentgetLastAddFragmentInStack: 获取栈中同级别最后加入的fragmentgetTopShowFragment : 获取顶层可见fragmentgetTopShowFragmentInStack: 获取栈中顶层可见fragmentgetFragments : 获取同级别fragmentgetFragmentsInStack : 获取栈中同级别fragmentgetAllFragments : 获取所有fragmentgetAllFragmentsInStack : 获取栈中所有fragmentgetPreFragment : 获取目标fragment的前一个fragmentfindFragment : 查找fragmentdispatchBackPress : 处理fragment回退键setBackgroundColor : 设置背景色setBackgroundResource : 设置背景资源setBackground : 设置背景
AES对称加密 → AESUtils
initKey : 生成密钥encrypt : 加密decrypt : 解密
DES对称加密 → DESUtils
initKey : 生成密钥encrypt : DES 加密decrypt : DES 解密
MD5加密 → MD5Utils
encryptMD5 : MD5加密
SHA-1加密不可逆 → SHAUtils
encryptSHA : SHA-512 加密
3DES对称加密 → TripleDESUtils
initKey : 生成密钥encrypt : 3DES 加密decrypt : 3DES 解密
加密工具类 → [CipherUtils]
md5 : 输入流转md5XorEncode : 异或加密XorDecode : 异或解密sha1 : 字符串sha1值
About
????这里把开发中常用的一些工具类做一个整理,主要用到的时候不用再费力的百度或者Google了,大家有需要的可以随时借鉴走,同时也希望这个越来越强大,有什么错误的地方还希望各位不吝指出,让我得以完善,当然,在此声明,这些并不是我一个人,也用了许多前辈们的东西,这里一并感谢,目前还在测试,还没有上传到Jcenter,需要的自己拷贝,测试完成后会给大家贴出引用地址的,持续更新中。对你有用就给一个Start吧!
Download
Gradle:
compile ‘com.abrahamcaijin.commonutil:CommonUtil:1.0.0‘
- 1
- 1
Maven:
<dependency> <groupId>com.abrahamcaijin.commonutil</groupId> <artifactId>CommonUtil</artifactId> <version>1.0.0</version> <type>pom</type></dependency>
Ivy:
<dependency org=‘com.abrahamcaijin.commonutil‘ name=‘CommonUtil‘ rev=‘1.0.0‘> <artifact name=‘CommonUtil‘ ext=‘pom‘ ></artifact></dependency>
How to use
// init it in the function of onCreate in ur ApplicationAppUtils.init(context);
Proguard
-keep class com.jingewenku.abrahamcaijin.commonutil.** { *; }-keepclassmembers class com.jingewenku.abrahamcaijin.commonutil.** { *; }-dontwarn com.jingewenku.abrahamcaijin.commonutil.**