Android开发人员不得不收集的代码(持续更新中)

moveDir : 移动目录

moveFile : 移动文件

deleteDir : 删除目录

deleteFile : 删除文件

listFilesInDir : 获取目录下所有文件

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

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

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

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

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

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

writeFileFromIS : 将输入流写入文件

writeFileFromString : 将字符串写入文件

readFile2List : 指定编码按行读取文件到链表中

readFile2String : 指定编码按行读取文件到字符串中

readFile2Bytes : 读取文件到字符数组中

getFileLastModified : 获取文件最后修改的毫秒时间戳

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

getFileLines : 获取文件行数

getDirSize : 获取目录大小

getFileSize : 获取文件大小

getDirLength : 获取目录长度

getFileLength : 获取文件长度

getFileMD5 : 获取文件的MD5校验码

getFileMD5ToString : 获取文件的MD5校验码

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

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

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

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




**图片相关→ImageUtils.java→Demo**



bitmap2Bytes, bytes2Bitmap : bitmap与byteArr互转

drawable2Bitmap, bitmap2Drawable: drawable与bitmap互转

drawable2Bytes, bytes2Drawable : drawable与byteArr互转

getBitmap : 获取bitmap

scale : 缩放图片

clip : 裁剪图片

skew : 倾斜图片

rotate : 旋转图片

getRotateDegree : 获取图片旋转角度

toRound : 转为圆形图片

toRoundCorner : 转为圆角图片

fastBlur : 快速模糊

renderScriptBlur : renderScript模糊图片

stackBlur : stack模糊图片

addFrame : 添加颜色边框

addReflection : 添加倒影

addTextWatermark : 添加文字水印

addImageWatermark : 添加图片水印

toAlpha : 转为alpha位图

toGray : 转为灰度图片

save : 保存图片

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

getImageType : 获取图片类型

compressByScale : 按缩放压缩

compressByQuality : 按质量压缩

compressBySampleSize : 按采样大小压缩




**Handler相关→HandlerUtils.java→Demo**



HandlerHolder: 使用必读




**意图相关→IntentUtils.java**



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

getUninstallAppIntent : 获取卸载App的意图

getLaunchAppIntent : 获取打开App的意图

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

getShareTextIntent : 获取分享文本的意图

getShareImageIntent : 获取分享图片的意图

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

getShutdownIntent : 获取关机的意图

getCaptureIntent : 获取拍照的意图




**键盘相关→KeyboardUtils.java**



hideSoftInput : 动态隐藏软键盘

clickBlankArea2HideSoftInput: 点击屏幕空白区域隐藏软键盘

showSoftInput : 动态显示软键盘

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




**定位相关→LocationUtils.java**



isGpsEnabled : 判断Gps是否可用

isLocationEnabled: 判断定位是否可用

openGpsSettings : 打开Gps设置界面

register : 注册

unregister : 注销

getAddress : 根据经纬度获取地理位置

getCountryName : 根据经纬度获取所在国家

getLocality : 根据经纬度获取所在地

getStreet : 根据经纬度获取所在街道




**日志相关→LogUtils.java→Test**



init : 初始化函数

getBuilder: 获取LogUtils建造者

v : Verbose日志

d : Debug日志

i : Info日志

w : Warn日志

e : Error日志




**网络相关→NetworkUtils.java**



openWirelessSettings : 打开网络设置界面

isConnected : 判断网络是否连接

isAvailableByPing : 判断网络是否可用

getDataEnabled : 判断移动数据是否打开

setDataEnabled : 打开或关闭移动数据

is4G : 判断网络是否是4G

getWifiEnabled : 判断wifi是否打开

setWifiEnabled : 打开或关闭wifi

isWifiConnected : 判断wifi是否连接状态

isWifiAvailable : 判断wifi数据是否可用

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

getNetworkType : 获取当前网络类型

getIPAddress : 获取IP地址

getDomainAddress : 获取域名ip地址




**手机相关→PhoneUtils.java**



isPhone : 判断设备是否是手机

getIMEI : 获取IMEI码

getIMSI : 获取IMSI码

getPhoneType : 获取移动终端类型

isSimCardReady : 判断sim卡是否准备好

getSimOperatorName : 获取Sim卡运营商名称

getSimOperatorByMnc: 获取Sim卡运营商名称

getPhoneStatus : 获取手机状态信息

dial : 跳至拨号界面

call : 拨打phoneNumber

sendSms : 跳至发送短信界面

sendSmsSilent : 发送短信

getAllContactInfo : 获取手机联系人

getContactNum : 打开手机联系人界面点击联系人后便获取该号码

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




**拼音相关→PinyinUtils.java→Test**



ccs2Pinyin : 汉字转拼音

ccs2Pinyin : 汉字转拼音

getPinyinFirstLetter : 获取第一个汉字首字母

getPinyinFirstLetters: 获取所有汉字的首字母

getSurnamePinyin : 根据名字获取姓氏的拼音

getSurnameFirstLetter: 根据名字获取姓氏的首字母




**进程相关→ProcessUtils.java**



getForegroundProcessName : 获取前台线程包名

killAllBackgroundProcesses: 杀死所有的后台服务进程

killBackgroundProcesses : 杀死后台服务进程




**正则相关→RegexUtils.java→Test**



isMobileSimple : 验证手机号(简单)

isMobileExact : 验证手机号(精确)

isTel : 验证电话号码

isIDCard15 : 验证身份证号码15位

isIDCard18 : 验证身份证号码18位

isEmail : 验证邮箱

isURL : 验证URL

isZh : 验证汉字

isUsername : 验证用户名

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

isIP : 验证IP地址

isMatch : 判断是否匹配正则

getMatches : 获取正则匹配的部分

getSplits : 获取正则匹配分组

getReplaceFirst: 替换正则匹配的第一部分

getReplaceAll : 替换所有正则匹配的部分




**屏幕相关→ScreenUtils.java**



getScreenWidth : 获取屏幕的宽度(单位:px)

getScreenHeight : 获取屏幕的高度(单位:px)

setLandscape : 设置屏幕为横屏

setPortrait : 设置屏幕为竖屏

isLandscape : 判断是否横屏

isPortrait : 判断是否竖屏

getScreenRotation : 获取屏幕旋转角度

captureWithStatusBar : 获取当前屏幕截图,包含状态栏

captureWithoutStatusBar: 获取当前屏幕截图,不包含状态栏

isScreenLock : 判断是否锁屏




**SD卡相关→SDCardUtils.java**



isSDCardEnable: 判断SD卡是否可用

getSDCardPath : 获取SD卡路径

getDataPath : 获取SD卡Data路径

getFreeSpace : 计算SD卡的剩余空间

getSDCardInfo : 获取SD卡信息




**服务相关→ServiceUtils.java**



getAllRunningService: 获取所有运行的服务

startService : 启动服务

stopService : 停止服务

bindService : 绑定服务

unbindService : 解绑服务

isServiceRunning : 判断服务是否运行




**尺寸相关→SizeUtils.java**



dp2px, px2dp : dp与px转换

sp2px, px2sp : sp与px转换

applyDimension : 各种单位转换

forceGetViewSize : 在onCreate中获取视图的尺寸

measureView : 测量视图尺寸

getMeasuredWidth : 获取测量视图宽度

getMeasuredHeight: 获取测量视图高度




**Snackbar相关→SnackbarUtils.java**



showShortSnackbar : 显示短时snackbar

showLongSnackbar : 显示长时snackbar

showIndefiniteSnackbar: 显示自定义时长snackbar

addView : 为SnackBar添加布局

dismissSnackbar : 取消snackbar显示




**SpannableString相关工具类→SpannableStringUtils.java**



getBuilder : 获取建造者

setFlag : 设置标识

setForegroundColor: 设置前景色

setBackgroundColor: 设置背景色

setQuoteColor : 设置引用线的颜色

setLeadingMargin : 设置缩进

setBullet : 设置列表标记

setProportion : 设置字体比例

setXProportion : 设置字体横向比例

setStrikethrough : 设置删除线

setUnderline : 设置下划线

setSuperscript : 设置上标

setSubscript : 设置下标

setBold : 设置粗体

setItalic : 设置斜体

setBoldItalic : 设置粗斜体

setFontFamily : 设置字体

setAlign : 设置对齐

setBitmap : 设置图片

setDrawable : 设置图片

setUri : 设置图片

setResourceId : 设置图片

setClickSpan : 设置点击事件

setUrl : 设置超链接

setBlur : 设置模糊

append : 追加样式字符串

create : 创建样式字符串




**SP相关→SPUtils.java→Test**



SPUtils : SPUtils构造函数

putString : SP中写入String类型value

getString : SP中读取String

putInt : SP中写入int类型value

getInt : SP中读取int

putLong : SP中写入long类型value

getLong : SP中读取long

putFloat : SP中写入float类型value

getFloat : SP中读取float

putBoolean: SP中写入boolean类型value

getBoolean: SP中读取boolean

getAll : SP中获取所有键值对

remove : SP中移除该key

contains : SP中是否存在该key

clear : SP中清除所有数据




**字符串相关→StringUtils.java→Test**



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

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

equals : 判断两字符串是否相等

equalsIgnoreCase: 判断两字符串忽略大小写是否相等

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

length : 返回字符串长度

upperFirstLetter: 首字母大写

lowerFirstLetter: 首字母小写

reverse : 反转字符串

toDBC : 转化为半角字符

toSBC : 转化为全角字符




**线程池相关→ThreadPoolUtils.java**



ThreadPoolUtils : ThreadPoolUtils构造函数

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

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

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

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

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

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

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

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

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

invokeAll, invokeAny : 执行给定的任务

schedule : 延迟执行Runnable命令

schedule : 延迟执行Callable命令

scheduleWithFixedRate : 延迟并循环执行命令

scheduleWithFixedDelay: 延迟并以固定休息时间循环执行命令




**时间相关→TimeUtils.java→Test**



millis2String : 将时间戳转为时间字符串

string2Millis : 将时间字符串转为时间戳

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

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

date2Millis : 将Date类型转为时间戳

millis2Date : 将时间戳转为Date类型

最后

只要是程序员,不管是Java还是Android,如果不去阅读源码,只看API文档,那就只是停留于皮毛,这对我们知识体系的建立和完备以及实战技术的提升都是不利的。

真正最能锻炼能力的便是直接去阅读源码,不仅限于阅读各大系统源码,还包括各种优秀的开源库。

腾讯、字节跳动、阿里、百度等BAT大厂 2019-2021面试真题解析

资料太多,全部展示会影响篇幅,暂时就先列举这些部分截图

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

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

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

date2Millis : 将Date类型转为时间戳

millis2Date : 将时间戳转为Date类型

最后

只要是程序员,不管是Java还是Android,如果不去阅读源码,只看API文档,那就只是停留于皮毛,这对我们知识体系的建立和完备以及实战技术的提升都是不利的。

真正最能锻炼能力的便是直接去阅读源码,不仅限于阅读各大系统源码,还包括各种优秀的开源库。

[外链图片转存中…(img-XaBfTj28-1714412424255)]

腾讯、字节跳动、阿里、百度等BAT大厂 2019-2021面试真题解析

[外链图片转存中…(img-U9uvkCJz-1714412424255)]

资料太多,全部展示会影响篇幅,暂时就先列举这些部分截图

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值