FastAndrUtils

Introduction: android 快速开发工具类
More: Author   ReportBugs   OfficialWebsite   
Tags:

Fastandrutils 是一套整理修改整合的 android 开发常用的工具类。

这样可以减少复制粘贴代码,从而减少重复代码,也不用为了一个常用的功能去谷歌百度,让代码更简洁,让开发更高效。

同时希望您的添加完善,让 android 开发变得更简单。

感兴趣的话,就点赞支持下

个人博客

使用

  1. Gradle 添加

    compile 'cn.hotapk:fastandrutils:1.0.0'

  2. androidmanifest.xml 的 application 添加

    android:name="cn.hotapk.fastandrutils.utils.FApplication"

    或者

    public class 你的 application extends FApplication {
     ...
    }
    

    或者 在你的 application 添加

    FUtils.init(this);

    类说明

    描述
    FActivityLifecycleCallbacks.java activity 生命周期管理
    FAppUtils.java app 相关信息
    FApplication.java Application
    FAssetsARawUtils.java assets raw 相关操作
    FCleanUtils.java 清理 app 缓存
    FClickProxy.java 防止重复点击
    FCloseUtils.java 关闭数据流
    FConvertUtils.java 数据转换
    FCrashUtils.java app 异常退出捕获
    FDBExprotUtils.java 数据库导出到 sd 卡
    FEncryptUtils.java 加密相关
    FFileUtils.java 文件操作工具
    FHanziToPinyin.java 汉字转拼音
    FImageUtils.java 图片工具
    FKeyBoardHeightUtils.java 获取键盘高度
    FKeyBoardUI.java 软键盘上方显示 EditText
    FKeyBoardUtils.java 软键盘显示隐藏
    FLogNetServer.java 访问手机 log 内网 webservers
    FLogUtils.java 日志操作
    FNetworkUtils.java 网络相关
    FPermissionUtils.java 权限申请
    FPhoneUtils.java 设备相关
    FResourcesUtils.java 获取资源相关
    FScreenUtils.java 屏幕相关
    FSharedPreferencesUtils.java SharedPreferences 相关
    FTimeUtils.java 时间操作
    FToastUtils.java Toast
    FUtils.java 初始化该框架
    FValidatorUtils.java 验证相关
    FZipUtils.java 文件解压缩类
    NanoHTTPD.java android 使用的小型简单的 webservers

API

  • 类名

FActivityLifecycleCallbacks.java

  • 说明

    activity 生命周期管理

  • 方法描述

    方法 描述
    addActivity 添加 activity
    currentActivity 获取当前 activity
    removeActivity 结束 activity
    finishActivity 结束指定类名的 activity
    removeAllActivities 销毁所有 activity
  • 类名

FAppUtils.java

  • 说明

    app 相关信息

  • 方法描述

    方法 描述
    getAppPackageName 获取 App 包名
    getAppName 获取 App 名称
    getVerCode 获取 App 版本号
    getVerName 获取 App 版本名称
    installApk 安装 App
    uninstallApk 卸载 App
    isServiceRunning 检测服务是否运行
    stopRunningService 停止运行服务
    getSign 获取应用签名
    hexdigest 签名 byte 数组转 32 位签名字符串
  • 类名

FApplication.java

  • 说明

Application

  • 方法描述

  • 类名

FAssetsARawUtils.java

  • 说明

    assets raw 相关操作

  • 方法描述

    方法 描述
    assetsDataToSD 拷贝 assets 下的文件到 sd 卡
    getAssetsToString 读取 assets 文件内容
    readAssetsByteArray 读取 assets 文件 转 byte 数组
    getRawToString 读取 raw 文件内容
    readRawFileToByteArray 读取 raw 文件 转 byte 数组
    copyRawFileToSdcard 复制 raw 文件到 sd 卡
  • 类名

FCleanUtils.java

  • 说明

    清理 app 缓存

  • 方法描述

    方法 描述
    cleanInternalCache 清除本应用内部缓存
    cleanDatabases 清除本应用所有数据库
    cleanDatabaseByName 按名字清除本应用数据库
    cleanSharedPreference 清除本应用 SharedPreference
    cleanFiles 清除本应用 files 下的内容
    cleanExternalCache 清除外部 cache 下的内容
    cleanCustomCache 清除自定义路径下的文件
    cleanApplicationData 清除本应用所有及自定义文件路径的数据
  • 类名

FClickProxy.java

  • 说明

    防止重复点击

  • 方法描述

  • 类名

FCloseUtils.java

  • 说明

关闭数据流

  • 方法描述

    方法 描述
    closeIO 关闭 IO
  • 类名

FConvertUtils.java

  • 说明

    数据转换

  • 方法描述

    方法 描述
    string2MD5 对字符串 md5 加密
    encodedMessage Bytes 转 Base64 字符串
    decodedMessage Base64 字符串转 bytes
    px2dip 将 px 值转换为 dip 或 dp 值
    dip2px 将 dip 或 dp 值转换为 px 值
    px2sp 将 px 值转换为 sp 值
    sp2px 将 sp 值转换为 px 值
    input2OutputStream inputStream 转 outputStream
    output2InputStream outputStream 转 inputStream
    inputStream2Bytes inputStream 转 byteArr
    bytes2InputStream byteArr 转 inputStream
    outputStream2Bytes outputStream 转 byteArr
    bytes2OutputStream byteArr 转 outputStream
    inputStream2String inputStream 转 string 按编码
    string2InputStream string 转 inputStream 按编码
    outputStream2String outputStream 转 string 按编码
    string2OutputStream string 转 outputStream 按编码
    obj2Map 对象转 map
    map2String map 转字符串
    getFormatSize 格式化 KB MB GB 单位
  • 类名

FCrashUtils.java

  • 说明

    app 异常退出捕获

  • 方法描述

  • 类名

FDBExprotUtils.java

  • 说明

    数据库导出到 sd 卡

  • 方法描述

    方法 描述
    startExportDatabase 导出数据库
  • 类名

FEncryptUtils.java

  • 说明

    加密相关

  • 方法描述

    方法 描述
    encryptMD2ToString MD2 加密
    encryptMD5ToString MD5 加密
    encryptMD5File2String MD5 加密文件
    encryptSHA1ToString SHA1 加密
    encryptSHA224ToString SHA224 加密
    encryptSHA256ToString SHA256 加密
    encryptSHA384ToString SHA384 加密
    encryptSHA512ToString SHA512 加密
    hashTemplate hash 加密模板
    encryptHmacMD5ToString HmacMD5 加密
    encryptHmacSHA1ToString HmacSHA1 加密
    encryptHmacSHA224ToString HmacSHA224 加密
    encryptHmacSHA256ToString HmacSHA256 加密
    encryptHmacSHA384ToString HmacSHA384 加密
    encryptHmacSHA512ToString HmacSHA512 加密
    hmacTemplate Hmac 加密模板
    encryptDES DES 加密
    decryptDES DES 解密
    encrypt3DES 3DES 加密
    decrypt3DES 3DES 解密
    encryptAES AES 加密
    decryptAES AES 解密
  • 类名

FFileUtils.java

  • 说明

    文件操作工具

  • 方法描述

    方法 描述
    getRootDir 获取根目录
    mkDir 可创建文件夹
    creatFile 创建文件
    delFile 删除文件
    delDir 删除文件夹
    copyFileTo 拷贝文件
    moveFileTo 移动文件
    moveFilesTo 移动文件目录
    file2byte 文件转 byte 数组
    readFile 文件读取
    inputStreamToFile InputStream 转文件
    file2Inp 文件转 InputStream
    writeText 写入数据到文件
    writeByteArrayToFile byte 数组转文件
    appendText 文件追加数据
    appendText 文件追加数据,可追加数据到头部
    getLength 获取文件大小
    getFileName 获取文件名
    exists 判断文件是否存在
    orderByDate 按文件时间排序
    orderByName 按文件名称排序
    orderByLength 按文件大小排序
    filter 文件筛选
    getFiles 获取文件列表
  • 类名

FHanziToPinyin.java

  • 说明

    汉字转拼音

  • 方法描述

    方法 描述
    get 汉字转拼音
  • 类名

FImageUtils.java

  • 说明

    图片工具

  • 方法描述

    方法 描述
    bitmap2Bytes bitmap 转 byteArr
    bytes2Bitmap byteArr 转 bitmap
    yuv2Jpeg yuv 转 jpeg
    bitmap2StrByBase64 将 Bitmap 转换成 Base64 字符串
    drawable2Bytes drawable 转 byteArr
    bytes2Drawable byteArr 转 drawable
    readPictureDegree 读取图片属性:旋转的角度
    rotaingImageView 旋转图片
    drawable2Bitmap drawable 转 bitmap
    bitmap2Drawable bitmap 转 drawable
    view2Bitmap view 转 bitmap
    getBitmap 获取 bitmap
    scale 缩放图片
    clip 裁剪图片
    skew 倾斜图片
    rotate 旋转图片
    toRound 转为圆形图片
    toRoundCorner 转为圆角图片
    addCornerBorder 添加圆角边框
    addBorder 添加边框
    addReflection 添加倒影
    addTextWatermark 添加文字水印
    addImageWatermark 添加图片水印
    toAlpha 转为 alpha 位图
    toGray 转为灰度图片
    fastBlur 高斯模糊
    binaryzation 图片二值化
    save 保存图片
    isImage 根据文件名判断文件是否为图片
    getImageType 获取图片类型
    compressByScale 按缩放压缩
    compressByQuality 按质量压缩
    compressBySampleSize 按采样大小压缩
  • 类名

FKeyBoardHeightUtils.java

  • 说明

    获取键盘高度

  • 方法描述

  • 类名

FKeyBoardUI.java

  • 说明

    软键盘上方显示 EditText

  • 方法描述

  • 使用方法

FKeyBoardUI. buildKeyBoardUI(Activity)

  • 类名

FKeyBoardUtils.java

  • 说明

    软键盘显示隐藏

  • 方法描述

    方法 描述
    openKeybord 打开软键盘
    closeKeybord 关闭软键盘
    hideInputForce 隐藏软键盘
    showInput 打开键盘
  • 类名

FLogNetServer.java

  • 说明

    访问手机 log 内网 webservers

  • 方法描述

  • 使用

    结合 FLogUtils 使用

  • 类名

FLogUtils.java

  • 说明

日志操作

  • 方法描述

    方法 描述
    startLogServer 启动 log 的 WebServer 服务
    stopLogServer 关闭 log 的 WebServer 服务
    e 打印 log
    setCrash 保存 app 异常退出时的 log
    debug 是否开启 bebug 模式
    saveSD 是否保存到 sd 卡
    saveCrash 是否保存 crash 信息
    setLogSize 设置 log 文件大小
    setlogDir 设置 log 文件目录
  • 类名

FNetworkUtils.java

  • 说明

网络相关

  • 方法描述

    方法 描述
    openWirelessSettings 打开网络设置界面
    getActiveNetworkInfo 获取活动网络信息
    isConnected 判断网络是否连接
    getNetworkOperatorName 获取网络运营商名称
    isNetworkAvailable 判断网络连接是否打开,包括移动数据连接
    isWifi 检测当前打开的网络类型是否 WIFI
    is3G 检测当前打开的网络类型是否 3G
    is4G 检测当前打开的网络类型是否 4G
    isWiFi 是否打开 Wifi
    setDataEnabled 打开或关闭移动数据
    setWifiEnabled 打开或关闭 wifi
    getNetworkType 判断当前是否网络连接
    getUrlParams 获取 URL 中参数 并返回 Map
    getIPAddress 获取 ip 地址
  • 类名

FPermissionUtils.java

  • 说明

    权限申请

  • 方法描述

    方法 描述
    onRequestPermissionsResult 请求权限结果
    getDeniedPermissions 获取请求权限中需要授权的权限
    hasAlwaysDeniedPermission 是否彻底拒绝了某项权限
    shouldShowRequestPermissionRationale 是否有权限需要说明提示
    requestPermissions 请求权限
  • 使用

    该方法 onRequestPermissionsResult() 对应到 Activity 中的 onRequestPermissionsResult()方法。

  • 类名

FPhoneUtils.java

  • 说明

    设备相关

  • 方法描述

    方法 描述
    isPhone 判断设备是否是手机
    getIMEI 获取 IMEI 码
    getIMSI 获取 IMSI 码
    getPhoneType 获取移动终端类型
    isSimCardReady 判断 sim 卡是否准备好
    getSimOperatorName 获取 Sim 卡运营商名称
    getSimOperatorName 获取 Sim 卡运营商名称
    getPhoneStatus 获取手机状态信息
    getAllContactInfo 获取手机联系人
    getAllSMS 获取手机短信并保存到 xml 中
  • 类名

FResourcesUtils.java

  • 说明

    获取资源相关

  • 方法描述

    方法 描述
    getAnimResources 获取 Anim 资源
    getMipmapResources 获取 Mipmap 资源
    getIdResources 获取 Id 资源
    getDrawableResources 获取 Drawable 资源
    getColorResources 获取 Color 资源
    getStringResources 获取 String 资源
    getLayoutResources 获取 Layout 资源
    getAttrResources 获取 Attr 资源
    getStyleResources 获取 Style 资源
    getStyleable 获取 styleable 资源
  • 类名

FScreenUtils.java

  • 说明

    屏幕相关

  • 方法描述

    方法 描述
    getScreen 获得屏幕宽高 pix
    getStatusHeight 获得状态栏的高度 pix
    getTitleHeight 获得标题栏的高度 pix
    snapShotWithStatusBar 获取当前屏幕截图,包含状态栏
    snapShotWithoutStatusBar 获取当前屏幕截图,不包含状态栏
    setFullScreen 设置屏幕为全屏
    setLandscape 设置屏幕为横屏
    setPortrait 设置屏幕为竖屏
    isLandscape 判断是否横屏
    isPortrait 判断是否竖屏
    getScreenRotation 获取屏幕旋转角度
    isScreenLock 判断是否锁屏
    setSleepDuration 设置进入休眠时长
    getSleepDuration 获取进入休眠时长
    isTablet 判断是否是平板
  • 类名

FSharedPreferencesUtils.java

  • 说明

    SharedPreferences

  • 方法描述

    方法 描述
    putInt 保存 int
    putBoolean 保存 Boolean
    putFloat 保存 Float
    putLong 保存 Long
    putString 保存 String
    putStringSet 保存 StringSet
    clear 清除数据
    clearByKey 清除 key 中的数据
  • 类名

FTimeUtils.java

  • 说明

    时间操作

  • 方法描述

    方法 描述
    stringToDate 字符串转日期类型
    dateToString 日期转字符串
    getDaysOfMonth 获取某年某月的天数
    getToday 获得当前日期
    getToMonth 获得当前月份
    getToYear 获得当前年份
    getDay 返回日期的天
    getYear 返回日期的年
    getMonth 返回日期的月份,1-12
    dayDiff 计算两个日期相差的天数
    yearDiff 比较两个日期的年差
    getFristDayTime 获取一天的开始时间
    getLastDayTime 获取一天的结束时间
    yearDiffCurr 比较指定日期与当前日期的差
    getFirstWeekdayOfMonth 获取每月的第一周
    getLastWeekdayOfMonth 获取每月的最后一周
    getFirstDayOfMonth 获取本月第一天
    getLastDayOfMonth 获取本月最后一天
    isDate 判断日期是否有效,包括闰年的情况
    getAstro 根据生日获取星座
  • 类名

FToastUtils.java

  • 说明

Toast

  • 方法描述

    方法 描述
    setConf 配置相关参数
    showMessage 显示短时间的 Toast
    showLongMsg 显示长时间的 Toast
  • 使用

FToastUtils. getInstant(). showMessage(); FToastUtils. getInstant(). setConf(conf).showMessage();

  • 类名

FUtils.java

  • 说明

    初始化框架

  • 方法描述

  • 使用 FUtils.init(Application)

  • 类名

FValidatorUtils.java

  • 说明

    验证相关

  • 方法描述

    方法 描述
    isMobileSimple 验证手机号(简单)
    isMobileExact 验证手机号(精确)
    isTel 验证电话号码
    isIDCard15 验证身份证号码 15 位
    isIDCard18 验证身份证号码 18 位
    isEmail 验证邮箱
    isURL 验证 URL
    isZh 验证汉字
    isUsername 验证用户名
    isDate 验证 yyyy-MM-dd 格式的日期校验
    isIP 验证 IP 地址
    isIP 验证 IP 地址
  • 类名

FZipUtils.java

  • 说明

    文件解压缩类

  • 方法描述

    方法 描述
    zipFile 压缩文件
    unzipFile 解压文件
  • 类名

NanoHTTPD.java

  • 说明

    android 使用的小型简单的 webservers

  • 方法描述

  • 使用

    参照

FLogNetServer.java

Apps
About Me
GitHub: Trinea
Facebook: Dev Tools