API
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 : 获取编译的SDK getBuildID : 获取修订版本列表(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 : 取消显示Toast Toast : 默认Toast调用 show : 屏幕中心位置短时间显示Toast。 ToastShortBottomCenter: 屏幕底部中间位置显示短时间Toast ToastShortBottomLeft : 屏幕底部左边位置短时间显示Toast ToastShortBottomRight : 屏幕底部右边位置短时间显示Toast ToastShortCenter : 屏幕中心位置短时间显示Toast ToastShortCenterLeft : 屏幕中心左边位置短时间显示Toast ToastShortCenterRight : 屏幕中心右边位置短时间显示Toast ToastShortTopCenter : 屏幕顶部中心位置短时间显示Toast ToastShortTopLeft : 屏幕顶部左边位置短时间显示Toast ToastShortTopRight : 屏幕顶部右边位置短时间显示Toast ToastLongBottomCenter : 屏幕底部中间位置显示长时间Toast ToastLongBottomLeft : 屏幕底部左边位置长时间显示Toast ToastLongBottomRight : 屏幕底部右边位置长时间显示Toast ToastLongCenter : 屏幕中心位置长时间显示Toast ToastLongCenterLeft : 屏幕中心左边位置长时间显示Toast ToastLongCenterRight : 屏幕中心右边位置短时间显示Toast ToastLongTopCenter : 屏幕顶部中心位置长时间显示Toast ToastLongTopLeft : 屏幕顶部左边位置长时间显示Toast ToastLongTopRight : 屏幕顶部右边位置长时间显示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: 从输入流中获得String cutString : 截取字符串到指定字节长度 cutStringFromChar : 截取字符串从第一个指定字符 strlen : 获取字节长度 getSizeDesc : 获取大小的描述 ip2int : ip地址转换为10进制数 gainUUID : 获取UUID phoneNoHide : 手机号码,中间4位星号替换 cardIdHide : 银行卡号,保留最后4位,其他星号替换 idHide : 身份证号,中间10位星号替换 checkVehicleNo : 是否为车牌号(沪A88888)
Wifi管理工具类 AppWifiHelperMgr
isWifiEnabled : Wifi状态 openWifi : 打开wifi closeWifi : 关闭Wifi lockWifi : 锁定WiFI就是判断wifi是否建立成功,在这里使用的是held(握手) acquire unLockWifi : 解锁 wificreateWifiLock: 创建一个Wifi锁,需要时调用 startScan : 扫描网络 getWifiList : 获取wifi列表 getWifiConfigList : 获取wifi配置列表 lookupScanInfo : 获取扫描WIFI列表的信息 getSSID : 获取指定Wifi的ssid名称 getBSSID : 获取指定Wifi的物理地址 getFrequency : 获取指定Wifi的频率 getCapabilities : 获取指定Wifi的功能 getLevel : 获取指定Wifi的信号强度 getBSSID : 获取SSID getCurrentNetId : 返回当前连接的网络的ID getWifiInfo : 返回所有信息 getIP : 获取IP地址 addNetWordLink : 添加一个连接 disableNetWordLink: 禁用一个链接 removeNetworkLink : 移除一个链接 hiddenSSID : 不显示SSID displaySSID : 显示SSID
类型转换类 ConvertUtils
hexStringToBytes: 十六进制字符串转换为byte数组 bytesToHexString: byte数组转换为十六进制字符串 charToByte : char转换为byte数组 intToByte : int转换为byte数组 byteToInt : byte数组转换为intsaveDecimals : 保留几位小数 nullOfString : null转String stringToByte : String转Byte stringToBoolean : String转Boolean stringToInt : String转Int stringToShort : String转Short stringToDouble : String转Double intToString : Int转String doubleToLong : Double转Long doubleToInt : Double转Int longToDouble : Long转Double longToInt : Long转Int stringToLong : String转Long longToString : 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 : 将字符日期转换成Date formatDoubleNumber : 将double日期转换成String
手机常用单位转换的辅助类 DensityUtils
dip2px: 据手机的分辨率从 dip 的单位 转成为 px(像素) px2dip: 根据手机的分辨率从 px(像素) 的单位 转成为 dp dp2px : dp转px sp2px : sp转px px2dp : px转dp px2sp : 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 : 打开URL downloadFile : 下载文件 upgradeApp : 通过APKURL升级应用
控件点击效果动画工具类 ToolAnimation
addTouchDrak : 给视图添加点击效果,让背景变深 addTouchLight: 给视图添加点击效果,让背景变暗
view管理类 ViewUtils
removeSelfFromParent : 把自身从父View中移除 isTouchInView : 判断触点是否落在该View上 setTVUnderLine : 给TextView设置下划线 showPopupWindow : 显示PopupWindow dismissPopup : 关闭PopupWindow captureView : 截图 createViewBitmap : 截图 convertViewToBitmap : 截图 getActivityBitmap : 获取Activity的截图 getStatusBarHeight : 获取状态栏高度 getToolbarHeight : 获取工具栏高度 getNavigationBarHeight : 获取导航栏高度 measureView : 测量view getViewWidth : 获取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获取Bitmap getDrawable : 根据drawable id获取Drawable bitmapToDrawble : bitmap转drawable readDrawableBitmap : 以最省内存的方式读取本地资源的图片 readDrawableBigBitmap : 读取本地drawable中较大的资源图片 getBitmapFromFile : 从文件得到BitMap getBitmapByteArray : 从数组得到Bitmap getBitmapFromStream : 从流中得到Bitmap setAlpha : 图片透明度处理 getImgCacheFromLocal2Bitmap: 获取源图片的BITMAP,压缩,本地图片 getBitmap2Byte : bitmap转byte[] decodeBitmapToThumbnail : 获取缩略图 saveImage : 保存图片 grayMasking : 光晕效果 getBitmapSize : 获取bitmap的字节大小 convertToBlackWhite : 将彩色图转换为黑白图 convertToRoundedCorner : 转换成圆角 BoxBlurFilter : 高斯模糊 getCircleBitmap : 圆形图片 getRoundedCornerBitmap : 获取圆角 lessenBitmap : 按比例缩小图片(单位像素) lessen the bitmap readPictureDegree : 判断图片旋转情况 rotaingImageView : 旋转图片 rotateBitmap : 图片旋转 getBitmapFromUri : 根据uri获取图片 getPicPathFromUri : 图片uri转path getSmallBitmap : 根据路径获得图片并压缩返回bitmap用于显示 decodeBitmap : 从文件中获取图片 computeSampleSize : 使用该算法,就可动态计算出图片的inSampleSize applyDimension : 长度单位转换
资金运算工具类 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 : 对象转json fromJson : json转对象 map2Json : Map转为JSONObject collection2Json : 集合转换为JSONArray object2Json : Object对象转换为JSONArray string2JSONObject : json字符串生成JSONObject对象 object2json : 对象转换为Json list2json : List集合转换为Json array2json : 对象数组转换为Json set2json : Set集合转为Json string2json : 字符串转换为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 : 开启JavaScript disableJavaScript : 禁用JavaScript enableJavaScriptOpenWindowsAutomatically : 开启JavaScript自动弹窗 disableJavaScriptOpenWindowsAutomatically : 禁用JavaScript自动弹窗 goBack : 返回
窗口管理类 [WindowUtils]()
getDisplayRotation : 获取当前窗口的旋转角度 isLandscape : 当前是否是横屏 isPortrait : 当前是否是竖屏 dimBackground : 调整窗口的透明度 1.0f,0.5f 变暗 setLandscape : 设置Activity为横屏 setPortrait : 设置Activity为竖屏 setActivityFullScreen : 设置全屏,要在setContentView之前调用
pull解析xml管理类 [XmlParseUtiles]()
getXmlList : 解析XML getXmlObject : 解析XML setXmlValue : 把xml标签的值,转换成对象里属性的值
压缩工具类 [ZipUtil]()
zipFiles : 批量压缩文件(夹) upZipFile : 解压缩一个文件 upZipSelectedFile : 解压文件名包含传入文字的文件 getEntriesNames : 获得压缩文件内文件列表 getEntriesEnumeration : 获得压缩文件内压缩文件对象以取得其属性 getEntryComment : 取得压缩文件对象的注释 getEntryName : 取得压缩文件对象的名称 zipFile : 压缩文件
Fragment管理类 [FragmentUtils]()
addFragment : 新增fragment addFragment : 新增fragment hideAddFragment : 先隐藏后新增fragment addFragments : 新增多个fragment removeFragment : 移除fragment removeToFragment : 移除到指定fragment removeFragments : 移除同级别fragment removeAllFragments : 移除所有fragment replaceFragment : 替换fragment popFragment : 出栈fragment popToFragment : 出栈到指定fragment popFragments : 出栈同级别fragment popAllFragments : 出栈所有fragment popAddFragment : 先出栈后新增fragment hideFragment : 隐藏fragment hideFragments : 隐藏同级别fragment showFragment : 显示fragment hideShowFragment : 先隐藏后显示fragment getLastAddFragment : 获取同级别最后加入的fragment getLastAddFragmentInStack: 获取栈中同级别最后加入的fragment getTopShowFragment : 获取顶层可见fragment getTopShowFragmentInStack: 获取栈中顶层可见fragment getFragments : 获取同级别fragment getFragmentsInStack : 获取栈中同级别fragment getAllFragments : 获取所有fragment getAllFragmentsInStack : 获取栈中所有fragment getPreFragment : 获取目标fragment的前一个fragment findFragment : 查找fragment dispatchBackPress : 处理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 : 输入流转md5 XorEncode : 异或加密 XorDecode : 异或解密 sha1 : 字符串sha1值
About
这里把开发中常用的一些工具类做一个整理,主要用到的时候不用再费力的百度或者Google了,大家有需要的可以随时借鉴走,同时也希望这个越来越强大,有什么错误的地方还希望各位不吝指出,让我得以完善,当然,在此声明,这些并不是我一个人,也用了许多前辈们的东西,这里一并感谢,目前还在测试,还没有上传到Jcenter,需要的自己拷贝,测试完成后会给大家贴出引用地址的,持续更新中。对你有用就给一个Start吧!
Download
Gradle:
compile 'com.abrahamcaijin.commonutil:CommonUtil:1.0.0'
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.**