AndroidUtilCode

景修杰
2023-12-01

文章转自https://blog.csdn.net/qq_33847549/article/details/73840901

 

GitHub地址:https://github.com/Blankj/AndroidUtilCode

为方便查找,已进行大致归类,其目录如下所示:

  • Activity相关→[ActivityUtils.Java][activity.java]

     
    1. isActivityExists : 判断是否存在Activity

    2. launchActivity : 打开Activity

    • 1
    • 2
    • 1
    • 2
  • App相关→[AppUtils.java][app.java]

     
    1. isInstallApp : 判断App是否安装

    2. installApp : 安装App(支持6.0)

    3. installAppSilent : 静默安装App

    4. uninstallApp : 卸载App

    5. uninstallAppSilent : 静默卸载App

    6. launchApp : 打开App

    7. getAppPackageName : 获取App包名

    8. getAppDetailsSettings : 获取App具体设置

    9. getAppName : 获取App名称

    10. getAppIcon : 获取App图标

    11. getAppPath : 获取App路径

    12. getAppVersionName : 获取App版本号

    13. getAppVersionCode : 获取App版本码

    14. getAppSignature : 获取App签名

    15. getAppSignatureSHA1 : 获取应用签名的的SHA1值

    16. isSystemApp : 判断App是否是系统应用

    17. isAppForeground : 判断App是否处于前台

    18. getAppInfo : 获取App信息

    19. getAppsInfo : 获取所有已安装App信息

    20. cleanAppData : 清除App所有数据

    • [BarUtils.java][bar.java]
  •  
    1. setTransparentStatusBar : 设置透明状态栏(api大于19方可使用)

    2. hideStatusBar : 隐藏状态栏

    3. getStatusBarHeight : 获取状态栏高度

    4. isStatusBarExists : 判断状态栏是否存在

    5. getActionBarHeight : 获取ActionBar高度

    6. showNotificationBar : 显示通知栏

    7. hideNotificationBar : 隐藏通知栏

    •  
  • 清除相关→[CleanUtils.java][clean.java]

     
    1. cleanInternalCache : 清除内部缓存

    2. cleanInternalFiles : 清除内部文件

    3. cleanInternalDbs : 清除内部数据库

    4. cleanInternalDbByName : 根据名称清除数据库

    5. cleanInternalSP : 清除内部SP

    6. cleanExternalCache : 清除外部缓存

    7. cleanCustomCache : 清除自定义目录下的文件

    •  
  • 剪贴板相关→[ClipboardUtils.java][clipboard.java]

     
    1. copyText : 复制文本到剪贴板

    2. getText : 获取剪贴板的文本

    3. copyUri : 复制uri到剪贴板

    4. getUri : 获取剪贴板的uri

    5. copyIntent : 复制意图到剪贴板

    6. getIntent : 获取剪贴板的意图

    •  
  • 关闭相关→[CloseUtils.java][close.java]

     
    1. closeIO : 关闭IO

    2. closeIOQuietly : 安静关闭IO

    •  
  • 常量相关→[ConstUtils.java][const.java]

     
    1. MemoryConst : 存储相关常量

    2. TimeConst : 时间相关常量

    3. RegexConst : 正则相关常量

    •  
  • 转换相关→[ConvertUtils.java][convert.java]→[Test][convert.test]

     
    1. bytes2HexString, hexString2Bytes : byteArr与hexString互转

    2. chars2Bytes, bytes2Chars : charArr与byteArr互转

    3. byte2Size, size2Byte : 字节数与unit为单位的size互转

    4. byte2FitSize : 字节数转合适大小

    5. bytes2Bits, bits2Bytes : bytes与bits互转

    6. input2OutputStream, output2InputStream : inputStream与outputStream互转

    7. inputStream2Bytes, bytes2InputStream : inputStream与byteArr互转

    8. outputStream2Bytes, bytes2OutputStream : outputStream与byteArr互转

    9. inputStream2String, string2InputStream : inputStream与string按编码互转

    10. outputStream2String, string2OutputStream : outputStream与string按编码互转

    11. bitmap2Bytes, bytes2Bitmap : bitmap与byteArr互转

    12. drawable2Bitmap, bitmap2Drawable : drawable与bitmap互转

    13. drawable2Bytes, bytes2Drawable : drawable与byteArr互转

    14. view2Bitmap : view转Bitmap

    15. dp2px, px2dp : dp与px互转

    16. sp2px, px2sp : sp与px互转

    •  
  • 崩溃相关→[CrashUtils.java][crash.java]

     
    1. getInstance : 获取单例

    2. init : 初始化

    •  
  • 设备相关→[DeviceUtils.java][device.java]

     
    1. isRoot : 判断设备是否root

    2. getSDKVersion : 获取设备系统版本号

    3. getAndroidID : 获取设备AndroidID

    4. getMacAddress : 获取设备MAC地址

    5. getManufacturer : 获取设备厂商,如Xiaomi

    6. getModel : 获取设备型号,如MI2SC

    •  
  • 判空相关→[EmptyUtils.java][empty.java]→[Test][empty.test]

     
    1. isEmpty : 判断对象是否为空

    2. isNotEmpty : 判断对象是否非空

    • 1
    • 2
    • 1
    • 2
  • 编码解码相关→[EncodeUtils.java][encode.java]→[Test][encode.test]

     
    1. urlEncode : URL编码

    2. urlDecode : URL解码

    3. base64Encode, base64Encode2String : Base64编码

    4. base64Decode : Base64解码

    5. base64UrlSafeEncode : Base64URL安全编码

    6. htmlEncode : Html编码

    7. htmlDecode : Html解码

    • 关→[EncryptUtils.java][encrypt.java]→[Test][encrypt.test]
  •  
    1. encryptMD2, encryptMD2ToString : MD2加密

    2. encryptMD5, encryptMD5ToString : MD5加密

    3. encryptMD5File, encryptMD5File2String : MD5加密文件

    4. encryptSHA1, encryptSHA1ToString : SHA1加密

    5. encryptSHA224, encryptSHA224ToString : SHA224加密

    6. encryptSHA256, encryptSHA256ToString : SHA256加密

    7. encryptSHA384, encryptSHA384ToString : SHA384加密

    8. encryptSHA512, encryptSHA512ToString : SHA512加密

    9. encryptHmacMD5, encryptHmacMD5ToString : HmacMD5加密

    10. encryptHmacSHA1, encryptHmacSHA1ToString : HmacSHA1加密

  • 文件相关→[FileUtils.java][file.java]→[Test][file.test]

     
    1. getFileByPath : 根据文件路径获取文件

    2. isFileExists : 判断文件是否存在

    3. isDir : 判断是否是目录

    4. isFile : 判断是否是文件

    5. createOrExistsDir : 判断目录是否存在,不存在则判断是否创建成功

    6. createOrExistsFile : 判断文件是否存在,不存在则判断是否创建成功

    7. createFileByDeleteOldFile : 判断文件是否存在,存在则在创建之前删除

    8. copyDir : 复制目录

    9. copyFile : 复制文件

    10. moveDir : 移动目录

    11. moveFile : 移动文件

    12. deleteDir : 删除目录

    13. deleteFile : 删除文件

    14. listFilesInDir : 获取目录下所有文件

    15. listFilesInDir : 获取目录下所有文件包括子目录

    16. listFilesInDirWithFilter : 获取目录下所有后缀名为suffix的文件

    17. listFilesInDirWithFilter : 获取目录下所有后缀名为suffix的文件包括子目录

    18. listFilesInDirWithFilter : 获取目录下所有符合filter的文件

    19. listFilesInDirWithFilter : 获取目录下所有符合filter的文件包括子目录

    20. searchFileInDir : 获取目录下指定文件名的文件包括子目录

    21. writeFileFromIS : 将输入流写入文件

    22. writeFileFromString : 将字符串写入文件

    23. getFileCharsetSimple : 简单获取文件编码格式

    24. getFileLines : 获取文件行数

    25. readFile2List : 指定编码按行读取文件到List

    26. readFile2SB : 指定编码按行读取文件到StringBuilder中

    27. getFileSize : 获取文件大小

    28. getFileMD5 : 获取文件的MD5校验码

    29. getDirName : 根据全路径获取最长目录

    30. getFileName : 根据全路径获取文件名

    31. getFileNameNoExtension : 根据全路径获取文件名不带拓展名

    32. getFileExtension : 根据全路径获取文件拓展名

    •  
  • 图片相关→[ImageUtils.java][image.java]

     
    1. bitmap2Bytes, bytes2Bitmap : bitmap与byteArr互转

    2. drawable2Bitmap, bitmap2Drawable : drawable与bitmap互转

    3. drawable2Bytes, bytes2Drawable : drawable与byteArr互转

    4. getBitmap : 获取bitmap

    5. scale : 缩放图片

    6. clip : 裁剪图片

    7. skew : 倾斜图片

    8. rotate : 旋转图片

    9. getRotateDegree : 获取图片旋转角度

    10. toRound : 转为圆形图片

    11. toRoundCorner : 转为圆角图片

    12. fastBlur : 快速模糊

    13. renderScriptBlur : renderScript模糊图片

    14. stackBlur : stack模糊图片

    15. addFrame : 添加颜色边框

    16. addReflection : 添加倒影

    17. addTextWatermark : 添加文字水印

    18. addImageWatermark : 添加图片水印

    19. toAlpha : 转为alpha位图

    20. toGray : 转为灰度图片

    21. save : 保存图片

    22. isImage : 根据文件名判断文件是否为图片

    23. getImageType : 获取图片类型

    24. compressByScale : 按缩放压缩

    25. compressByQuality : 按质量压缩

    26. compressBySampleSize : 按采样大小压缩

    •  
  • 意图相关→[IntentUtils.java][intent.java]

     
    1. getInstallAppIntent : 获取安装App(支持6.0)的意图

    2. getUninstallAppIntent : 获取卸载App的意图

    3. getLaunchAppIntent : 获取打开App的意图

    4. getAppDetailsSettingsIntent : 获取App具体设置的意图

    5. getShareTextIntent : 获取分享文本的意图

    6. getShareImageIntent : 获取分享图片的意图

    7. getComponentIntent : 获取其他应用组件的意图

    8. getShutdownIntent : 获取关机的意图

    9. getCaptureIntent : 获取拍照的意图

    •  
  • 键盘相关→[KeyboardUtils.java][keyboard.java]

     
    1. hideSoftInput : 动态隐藏软键盘

    2. clickBlankArea2HideSoftInput0 : 点击屏幕空白区域隐藏软键盘(注释萌萌哒)

    3. showSoftInput : 动态显示软键盘

    4. toggleSoftInput : 切换键盘显示与否状态

    5. isShowSoftInput : 判断键盘是否显示

    •  
  • 日志相关→[LogUtils.java][log.java]→[Test][log.test]

     
    1. init : 初始化函数

    2. getBuilder : 获取LogUtils建造者

    3. v : Verbose日志

    4. d : Debug日志

    5. i : Info日志

    6. w : Warn日志

    7. e : Error日志

    •  
  • 网络相关→[NetworkUtils.java][network.java]

     
    1. openWirelessSettings : 打开网络设置界面

    2. isAvailable : 判断网络是否可用

    3. isConnected : 判断网络是否连接

    4. is4G : 判断网络是否是4G

    5. isWifiConnected : 判断wifi是否连接状态

    6. getNetworkOperatorName : 获取移动网络运营商名称

    7. getPhoneType : 获取移动终端类型

    8. getNetWorkType, getNetWorkTypeName : 获取当前的网络类型(WIFI, 2G, 3G, 4G)

    •  
  • 手机相关→[PhoneUtils.java][phone.java]

     
    1. isPhone : 判断设备是否是手机

    2. getIMEI : 获取IMIE码

    3. getIMSI : 获取IMSI码

    4. getPhoneStatus : 获取手机状态信息

    5. dial : 跳至填充好phoneNumber的拨号界面

    6. call : 拨打phoneNumber

    7. sendSms : 发送短信

    8. getAllContactInfo : 获取手机联系人

    9. getContactNum : 打开手机联系人界面点击联系人后便获取该号码(注释萌萌哒)

    10. getAllSMS : 获取手机短信并保存到xml中

    •  
  • 正则相关→[RegexUtils.java][regex.java]→[Test][regex.test]

     
    1. isMobileSimple : 验证手机号(简单)

    2. isMobileExact : 验证手机号(精确)

    3. isTel : 验证电话号码

    4. isIDCard15 : 验证身份证号码15位

    5. isIDCard18 : 验证身份证号码18位

    6. isEmail : 验证邮箱

    7. isURL : 验证URL

    8. isChz : 验证汉字

    9. isUsername : 验证用户名

    10. isDate : 验证yyyy-MM-dd格式的日期校验,已考虑平闰年

    11. isIP : 验证IP地址

    12. isMatch : string是否匹配regex

  • 屏幕相关→[ScreenUtils.java][screen.java]

     
    1. getDeviceWidth, getDeviceHeight : 获取手机分辨率

    2. setTransparentStatusBar : 设置透明状态栏(api大于19方可使用)

    3. hideStatusBar : 隐藏状态栏(注释萌萌哒)

    4. getStatusBarHeight : 获取状态栏高度

    5. isStatusBarExists : 判断状态栏是否存在

    6. getActionBarHeight : 获取ActionBar高度

    7. showNotificationBar : 显示通知栏

    8. hideNotificationBar : 隐藏通知栏

    9. setLandscape : 设置屏幕为横屏(注释萌萌哒)

    10. snapShotWithStatusBar, snapShotWithoutStatusBar : 获取屏幕截图

    11. isScreenLock : 判断是否锁屏

    •  
  • SD卡相关→[SDCardUtils.java][sdcard.java]

     
    1. isSDCardEnable : 判断SD卡是否可用

    2. getDataPath : 获取SD卡Data路径

    3. getSDCardPath : 获取SD卡路径

    4. getFreeSpace : 计算SD卡的剩余空间

    5. getSDCardInfo : 获取SD卡信息

    •  
  • 服务相关→[ServiceUtils.java][service.java]

    isRunningService : 获取服务是否开启
    •  
  • Shell相关→[ShellUtils.java][shell.java]

     
    1. isRoot : 判断设备是否root

    2. execCmd : 是否是在root下执行命令

    •  
  • 尺寸相关→[SizeUtils.java][size.java]

     
    1. dp2px, px2dp : dp与px转换

    2. sp2px, px2sp : sp与px转换

    3. applyDimension : 各种单位转换

    4. forceGetViewSize : 在onCreate()即可强行获取View的尺寸

    5. measureView : ListView中提前测量View尺寸(注释萌萌哒)

  • SP相关→[SPUtils.java][sp.java]→[Test][sp.test]

     
    1. SPUtils : SPUtils构造函数

    2. putString : SP中写入String类型value

    3. getString : SP中读取String

    4. putInt : SP中写入int类型value

    5. getInt : SP中读取int

    6. putLong : SP中写入long类型value

    7. getLong : SP中读取long

    8. putFloat : SP中写入float类型value

    9. getFloat : SP中读取float

    10. putBoolean : SP中写入boolean类型value

    11. getBoolean : SP中读取boolean

    12. getAll : SP中获取所有键值对

    13. remove : SP中移除该key

    14. contains : SP中是否存在该key

    15. clear : SP中清除所有数据

  • 字符串相关→[StringUtils.java][string.java]→[Test][string.test]

     
    1. isEmpty : 判断字符串是否为null或长度为0

    2. isSpace : 判断字符串是否为null或全为空格

    3. null2Length0 : null转为长度为0的字符串

    4. length : 返回字符串长度

    5. upperFirstLetter : 首字母大写

    6. lowerFirstLetter : 首字母小写

    7. reverse : 反转字符串

    8. toDBC : 转化为半角字符

    9. toSBC : 转化为全角字符

    10. getPYFirstLetter : 获得第一个汉字首字母

    11. cn2PY : 中文转拼音

  • 线程池相关→[ThreadPoolUtils.java][thread_pool.java]

     
    1. ThreadPoolUtils : ThreadPoolUtils构造函数

    2. execute : 在未来某个时间执行给定的命令

    3. execute : 在未来某个时间执行给定的命令链表

    4. shutDown : 待以前提交的任务执行完毕后关闭线程池

    5. shutDownNow : 试图停止所有正在执行的活动任务

    6. isShutDown : 判断线程池是否已关闭

    7. isTerminated : 关闭线程池后判断所有任务是否都已完成

    8. awaitTermination : 请求关闭、发生超时或者当前线程中断

    9. submit : 提交一个Callable任务用于执行

    10. submit : 提交一个Runnable任务用于执行

    11. invokeAll, invokeAny : 执行给定的任务

    12. schedule : 延迟执行Runnable命令

    13. schedule : 延迟执行Callable命令

    14. scheduleWithFixedRate, scheduleWithFixedDelay : 延迟并循环执行命令

  • 时间相关→[TimeUtils.java][time.java]→[Test][time.test]

     
    1. milliseconds2String : 将时间戳转为时间字符串

    2. string2Milliseconds : 将时间字符串转为时间戳

    3. string2Date : 将时间字符串转为Date类型

    4. date2String : 将Date类型转为时间字符串

    5. date2Milliseconds : 将Date类型转为时间戳

    6. milliseconds2Date : 将时间戳转为Date类型

    7. milliseconds2Unit : 毫秒时间戳单位转换(单位:unit)

    8. getIntervalTime : 获取两个时间差(单位:unit)

    9. getCurTimeMills, getCurTimeString, getCurTimeDate : 获取当前时间

    10. getIntervalByNow : 获取与当前时间的差(单位:unit)

    11. isLeapYear : 判断闰年

    12. getWeek, getWeekIndex : 获取星期

    13. getWeekOfMonth : 获取月份中的第几周

    14. getWeekOfYear : 获取年份中的第几周

  • 吐司相关→[ToastUtils.java][toast.java]

     
    1. init : 吐司初始化

    2. showShortToastSafe : 安全地显示短时吐司

    3. showLongToastSafe : 安全地显示长时吐司

    4. showShortToast : 显示短时吐司

    5. showLongToast : 显示长时吐司

    6. cancelToast : 取消吐司显 

  • 压缩相关→[ZipUtils.java][zip.java]→[Test][zip.test]

     
    1. zipFiles : 批量压缩文件

    2. zipFile : 压缩文件

    3. unzipFiles : 批量解压文件

    4. unzipFile : 解压文件

    5. unzipFileByKeyword : 解压带有关键字的文件

    6. getFilesPath : 获取压缩文件中的文件路径链表

    7. getComments : 获取压缩文件中的注释链表

 类似资料:

相关阅读

相关文章

相关问答