|
1 | 1 | ## Android开发人员不得不收集的代码(持续更新中)
|
2 | 2 | ***
|
3 | 3 | 为方便查找,已进行大致归类,其目录如下所示:
|
4 |
| -> - [App相关][app.md]→[AppUtils.java][app.java] |
| 4 | +> - **App相关→[AppUtils.java][app.java]** |
5 | 5 | > - 安装App *installApp*
|
6 | 6 | > - 卸载指定包名的App *uninstallApp*
|
7 | 7 | > - 获取当前App信息 *getAppInfo*
|
|
12 | 12 | > - 可用来做App信息分享 *shareAppInfo*
|
13 | 13 | > - 判断当前App处于前台还是后台 *isAppBackground*
|
14 | 14 |
|
15 |
| -> - [常量相关][const.md]→[ConstUtils.java][const.java] |
| 15 | +> - **常量相关→[ConstUtils.java][const.java]** |
16 | 16 | > - 存储相关常量
|
17 | 17 | > - 时间相关常量
|
| 18 | +> - 正则相关常量 |
18 | 19 |
|
19 |
| -> - [转换相关][convert.md]→[ConvertUtils.java][convert.java] |
| 20 | +> - **转换相关→[ConvertUtils.java][convert.java]→[单元测试][convert.test]** |
20 | 21 | > - 每1个byte转为2个hex字符 *bytes2HexString*
|
21 | 22 | > - 每2个hex字符转为1个byte *hexString2Bytes*
|
22 | 23 | > - charArr转byteArr *chars2Bytes*
|
23 | 24 | > - byteArr转charArr *bytes2Chars*
|
24 | 25 |
|
25 |
| -> - [设备相关][device.md]→[DeviceUtils.java][device.java] |
| 26 | +> - **设备相关→[DeviceUtils.java][device.java]** |
26 | 27 | > - 获取设备MAC地址 *getMacAddress*
|
27 | 28 | > - 获取设备厂商,如Xiaomi *getManufacturer*
|
28 | 29 | > - 获取设备型号,如MI2SC *getModel*
|
29 | 30 |
|
30 |
| -> - [编码解码相关][encode.md]→[EncodeUtils.java][encode.java] |
| 31 | +> - **编码解码相关→[EncodeUtils.java][encode.java]→[单元测试][encode.test]** |
31 | 32 | > - URL编码 *urlEncode*
|
32 | 33 | > - URL解码 *urlDecode*
|
33 | 34 | > - Base64编码 *base64Encode* *base64Encode2String*
|
|
36 | 37 | > - Html编码 *htmlEncode*
|
37 | 38 | > - Html解码 *htmlDecode*
|
38 | 39 |
|
39 |
| -> - [加密解密相关][encrypt.md]→[EncryptUtils.java][encrypt.java] |
| 40 | +> - **加密解密相关→[EncryptUtils.java][encrypt.java]→[单元测试][encrypt.test]** |
40 | 41 | > - MD2加密 *encryptMD2ToString* *encryptMD2*
|
41 | 42 | > - MD5加密 *encryptMD5ToString* *encryptMD5*
|
42 | 43 | > - SHA1加密 *encryptSHA1ToString* *encryptSHA1*
|
|
64 | 65 | > - AES解密16进制密文 *decryptHexStringAES*
|
65 | 66 | > - AES解密 *decryptAES*
|
66 | 67 |
|
67 |
| -> - [文件相关][file.md]→[FileUtils.java][file.java] |
68 |
| -> - 完善ing |
| 68 | +> - **文件相关→[FileUtils.java][file.java]→[单元测试][file.test]** |
| 69 | +> - 根据文件路径获取文件 *getFileByPath* |
| 70 | +> - 判断文件是否存在 *isFileExists* |
| 71 | +> - 判断是否是目录 *isDir* |
| 72 | +> - 判断是否是文件 *isFile* |
| 73 | +> - 判断目录是否存在,不存在则判断是否创建成功 *createOrExistsDir* |
| 74 | +> - 判断文件是否存在,不存在则判断是否创建成功 *createOrExistsFile* |
| 75 | +> - 判断文件是否存在,存在则在创建之前删除 *createFileByDeleteOldFile* |
| 76 | +> - 复制目录 *copyDir* |
| 77 | +> - 复制文件 *copyFile* |
| 78 | +> - 移动目录 *moveDir* |
| 79 | +> - 移动文件 *moveFile* |
| 80 | +> - 删除目录 *deleteDir* |
| 81 | +> - 删除文件 *deleteFile* |
| 82 | +> - 将输入流写入文件 *writeFileFromIS* |
| 83 | +> - 将字符串写入文件 *writeFileFromString* |
| 84 | +> - 简单获取文件编码格式 *getFileCharsetSimple* |
| 85 | +> - |
| 86 | +
|
69 | 87 |
|
70 |
| -> - [图片相关][image.md]→[ImageUtils.java][image.java] |
| 88 | +> - **图片相关→[ImageUtils.java][image.java]** |
71 | 89 | > - 完善ing
|
72 | 90 |
|
73 |
| -> - [键盘相关][keyboard.md]→[KeyboardUtils.java][keyboard.java] |
| 91 | +> - **键盘相关→[KeyboardUtils.java][keyboard.java]** |
74 | 92 | > - 避免输入法面板遮挡
|
75 | 93 | > - 动态隐藏软键盘 *hideSoftInput*
|
76 | 94 | > - 点击屏幕空白区域隐藏软键盘(注释萌萌哒) *clickBlankArea2HideSoftInput0*
|
77 | 95 | > - 动态显示软键盘 *showSoftInput*
|
78 | 96 | > - 切换键盘显示与否状态 *toggleSoftInput*
|
79 | 97 |
|
80 |
| -> - [网络相关][network.md]→[NetworkUtils.java][network.java] |
| 98 | +> - **网络相关→[NetworkUtils.java][network.java]** |
81 | 99 | > - 打开网络设置界面 *openWirelessSettings*
|
82 | 100 | > - 判断网络是否可用 *isAvailable*
|
83 | 101 | > - 判断网络是否连接 *isConnected*
|
|
87 | 105 | > - 获取移动终端类型 *getPhoneType*
|
88 | 106 | > - 获取当前的网络类型(WIFI,2G,3G,4G) *getNetWorkType* *getNetWorkTypeName*
|
89 | 107 |
|
90 |
| -> - [手机相关][phone.md]→[PhoneUtils.java][phone.java] |
| 108 | +> - **手机相关→[PhoneUtils.java][phone.java]** |
91 | 109 | > - 判断设备是否是手机 *isPhone*
|
92 | 110 | > - 获取手机的IMIE *getPhoneIMEI*
|
93 | 111 | > - 获取手机状态信息 *getPhoneStatus*
|
|
98 | 116 | > - 打开手机联系人界面点击联系人后便获取该号码(注释萌萌哒) *getContantNum*
|
99 | 117 | > - 获取手机短信并保存到xml中 *getAllSMS*
|
100 | 118 |
|
101 |
| -> - [正则相关][regular.md]→[RegularUtils.java][regular.java] |
| 119 | +> - **正则相关→[RegularUtils.java][regular.java]→[单元测试][regular.test]** |
102 | 120 | > - 验证手机号(简单) *isMobileSimple*
|
103 | 121 | > - 验证手机号(精确) *isMobileExact*
|
104 | 122 | > - 验证电话号码 *isTel*
|
|
112 | 130 | > - 验证IP地址 *isIP*
|
113 | 131 | > - string是否匹配regex *isMatch*
|
114 | 132 |
|
115 |
| -> - [屏幕相关][screen.md]→[ScreenUtils.java][screen.java] |
| 133 | +> - **屏幕相关→[ScreenUtils.java][screen.java]** |
116 | 134 | > - 获取手机分辨率 *getDeviceWidth*、*getDeviceHeight*
|
117 | 135 | > - 设置透明状态栏(api大于19方可使用) *setTransparentStatusBar*
|
118 | 136 | > - 隐藏状态栏(注释萌萌哒) *hideStatusBar*
|
|
125 | 143 | > - 获取屏幕截图 *snapShotWithStatusBar*、*snapShotWithoutStatusBar*
|
126 | 144 | > - 判断是否锁屏 *isScreenLock*
|
127 | 145 |
|
128 |
| -> - [SD卡相关][sdcard.md]→[SDCardUtils.java][sdcard.java] |
| 146 | +> - **SD卡相关→[SDCardUtils.java][sdcard.java]** |
129 | 147 | > - 获取设备SD卡是否可用 *isSDCardEnable*
|
130 | 148 | > - 获取设备SD卡路径 *getSDCardPath*
|
131 | 149 | > - 完善ing
|
132 | 150 |
|
133 |
| -> - [Shell相关][shell.md]→[ShellUtils.java][shell.java] |
| 151 | +> - **Shell相关→[ShellUtils.java][shell.java]** |
134 | 152 | > - 判断设备是否root *isRoot*
|
135 | 153 | > - 是否是在root下执行命令 *execCmd*
|
136 | 154 |
|
137 |
| -> - [尺寸相关][size.md]→[SizeUtils.java][size.java] |
| 155 | +> - **尺寸相关→[SizeUtils.java][size.java]** |
138 | 156 | > - dp与px转换 *dp2px*、*px2dp*
|
139 | 157 | > - sp与px转换 *sp2px*、*px2sp*
|
140 | 158 | > - 各种单位转换 *applyDimension*
|
141 | 159 | > - 在onCreate()即可强行获取View的尺寸 *forceGetViewSize*
|
142 | 160 | > - ListView中提前测量View尺寸(注释萌萌哒) *measureView*
|
143 | 161 |
|
144 |
| -> - [SP相关][sp.md]→[SPUtils.java][sp.java] |
| 162 | +> - **SP相关→[SPUtils.java][sp.java]** |
145 | 163 | > - SP中写入String类型value *putString*
|
146 | 164 | > - SP中读取String *getString*
|
147 | 165 | > - SP中写入int类型value *putInt*
|
|
153 | 171 | > - SP中写入boolean类型value *putBoolean*
|
154 | 172 | > - SP中读取boolean *getBoolean*
|
155 | 173 |
|
156 |
| -> - [字符串相关][string.md]→[StringUtils.java][string.java] |
| 174 | +> - **字符串相关→[StringUtils.java][string.java]→[单元测试][string.test]** |
157 | 175 | > - 判断字符串是否为null或长度为0 *isEmpty*
|
158 | 176 | > - 判断字符串是否为null或全为空格 *isSpace*
|
159 | 177 | > - null转为长度为0的字符串 *null2Length0*
|
|
163 | 181 | > - 转化为半角字符 *toDBC*
|
164 | 182 | > - 转化为全角字符 *toSBC*
|
165 | 183 |
|
166 |
| -> - [时间相关][time.md]→[TimeUtils.java][time.java] |
| 184 | +> - **时间相关→[TimeUtils.java][time.java]→[单元测试][time.test]** |
167 | 185 | > - 将时间戳转为时间字符串 *milliseconds2String*
|
168 | 186 | > - 将时间字符串转为时间戳 *string2Milliseconds*
|
169 | 187 | > - 将时间字符串转为Date类型 *string2Date*
|
|
176 | 194 | > - 获取与当前时间的差(单位:unit) *getIntervalByNow*
|
177 | 195 | > - 判断闰年 *isLeapYear*
|
178 | 196 |
|
179 |
| -> - [未归类][unclassified.md]→[UnclassifiedUtils.java][unclassified.java] |
| 197 | +> - **未归类→[UnclassifiedUtils.java][unclassified.java]** |
180 | 198 | > - 获取服务是否开启 *isRunningService*
|
181 |
| -> - [更新Log][update_log.md] |
| 199 | +
|
| 200 | +> - **更新Log→[update_log.md][update_log.md]** |
182 | 201 |
|
183 | 202 | ***
|
184 | 203 |
|
@@ -217,45 +236,51 @@ See the License for the specific language governing permissions and
|
217 | 236 | limitations under the License.
|
218 | 237 | ```
|
219 | 238 |
|
220 |
| -[app.md]: https://github.com/Blankj/AndroidUtilCode/blob/master/md/about_app.md |
221 | 239 | [app.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/main/java/com/blankj/utilcode/utils/AppUtils.java
|
222 |
| -[const.md]: https://github.com/Blankj/AndroidUtilCode/blob/master/md/about_const.md |
| 240 | + |
223 | 241 | [const.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/main/java/com/blankj/utilcode/utils/ConstUtils.java
|
224 |
| -[convert.md]: https://github.com/Blankj/AndroidUtilCode/blob/master/md/about_convert.md |
| 242 | + |
225 | 243 | [convert.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/main/java/com/blankj/utilcode/utils/ConvertUtils.java
|
226 |
| -[device.md]: https://github.com/Blankj/AndroidUtilCode/blob/master/md/about_device.md |
| 244 | +[convert.test]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/test/java/com/blankj/utilcode/utils/ConvertUtilsTest.java |
| 245 | + |
227 | 246 | [device.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/main/java/com/blankj/utilcode/utils/DeviceUtils.java
|
228 |
| -[encode.md]: https://github.com/Blankj/AndroidUtilCode/blob/master/md/about_encode.md |
| 247 | + |
229 | 248 | [encode.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/main/java/com/blankj/utilcode/utils/EncodeUtils.java
|
230 |
| -[encrypt.md]: https://github.com/Blankj/AndroidUtilCode/blob/master/md/about_encrypt.md |
| 249 | +[encode.test]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/test/java/com/blankj/utilcode/utils/EncodeUtilsTest.java |
| 250 | + |
231 | 251 | [encrypt.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/main/java/com/blankj/utilcode/utils/EncryptUtils.java
|
232 |
| -[file.md]: https://github.com/Blankj/AndroidUtilCode/blob/master/md/about_file.md |
| 252 | +[encrypt.test]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/test/java/com/blankj/utilcode/utils/EncryptUtilsTest.java |
| 253 | + |
233 | 254 | [file.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/main/java/com/blankj/utilcode/utils/FileUtils.java
|
234 |
| -[image.md]: https://github.com/Blankj/AndroidUtilCode/blob/master/md/about_image.md |
| 255 | +[file.test]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/test/java/com/blankj/utilcode/utils/FileUtilsTest.java |
| 256 | + |
235 | 257 | [image.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/main/java/com/blankj/utilcode/utils/ImageUtils.java
|
236 |
| -[keyboard.md]: https://github.com/Blankj/AndroidUtilCode/blob/master/md/about_keyboard.md |
| 258 | + |
237 | 259 | [keyboard.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/main/java/com/blankj/utilcode/utils/KeyboardUtils.java
|
238 |
| -[network.md]: https://github.com/Blankj/AndroidUtilCode/blob/master/md/about_network.md |
| 260 | + |
239 | 261 | [network.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/main/java/com/blankj/utilcode/utils/NetworkUtils.java
|
240 |
| -[phone.md]: https://github.com/Blankj/AndroidUtilCode/blob/master/md/about_phone.md |
| 262 | + |
241 | 263 | [phone.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/main/java/com/blankj/utilcode/utils/PhonekUtils.java
|
242 |
| -[regular.md]: https://github.com/Blankj/AndroidUtilCode/blob/master/md/about_regular.md |
| 264 | + |
243 | 265 | [regular.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/main/java/com/blankj/utilcode/utils/RegularUtils.java
|
244 |
| -[screen.md]: https://github.com/Blankj/AndroidUtilCode/blob/master/md/about_screen.md |
| 266 | +[regular.test]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/test/java/com/blankj/utilcode/utils/RegularUtilsTest.java |
| 267 | + |
245 | 268 | [screen.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/main/java/com/blankj/utilcode/utils/ScreenUtils.java
|
246 |
| -[sdcard.md]: https://github.com/Blankj/AndroidUtilCode/blob/master/md/about_sdcard.md |
| 269 | + |
247 | 270 | [sdcard.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/main/java/com/blankj/utilcode/utils/SDCUtils.java
|
248 |
| -[shell.md]: https://github.com/Blankj/AndroidUtilCode/blob/master/md/about_shell.md |
| 271 | + |
249 | 272 | [shell.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/main/java/com/blankj/utilcode/utils/ShellUtils.java
|
250 |
| -[size.md]: https://github.com/Blankj/AndroidUtilCode/blob/master/md/about_size.md |
| 273 | + |
251 | 274 | [size.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/main/java/com/blankj/utilcode/utils/SizeUtils.java
|
252 |
| -[sp.md]: https://github.com/Blankj/AndroidUtilCode/blob/master/md/about_sp.md |
| 275 | + |
253 | 276 | [sp.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/main/java/com/blankj/utilcode/utils/SPUtils.java
|
254 |
| -[string.md]: https://github.com/Blankj/AndroidUtilCode/blob/master/md/about_string.md |
| 277 | + |
255 | 278 | [string.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/main/java/com/blankj/utilcode/utils/StringUtils.java
|
256 |
| -[time.md]: https://github.com/Blankj/AndroidUtilCode/blob/master/md/about_time.md |
| 279 | +[string.test]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/test/java/com/blankj/utilcode/utils/StringUtilsTest.java |
| 280 | + |
257 | 281 | [time.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/main/java/com/blankj/utilcode/utils/TimeUtils.java
|
258 |
| -[unclassified.md]: https://github.com/Blankj/AndroidUtilCode/blob/master/md/unclassified.md |
| 282 | +[time.test]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/test/java/com/blankj/utilcode/utils/TimeUtilsTest.java |
| 283 | + |
259 | 284 | [unclassified.java]: https://github.com/Blankj/AndroidUtilCode/blob/master/utilcode/src/main/java/com/blankj/utilcode/utils/UnclassifiedUtils.java
|
260 |
| -[update_log.md]: https://github.com/Blankj/AndroidUtilCode/blob/master/md/update_log.md |
261 | 285 |
|
| 286 | +[update_log.md]: https://github.com/Blankj/AndroidUtilCode/blob/master/md/update_log.md |
0 commit comments