@@ -43,6 +43,8 @@ public class BaseApplication extends Application{
4343
4444## [ DevMediaManager 多媒体工具类文档] ( https://github.com/afkT/DevUtils/blob/master/DevLibUtils/utils_readme/media/DevMediaManager.md )
4545
46+ ## [ FileRecordUtils、AnalysisRecordUtils、DevLoggerUtils 日志、异常文件记录保存工具类文档] ( https://github.com/afkT/DevUtils/blob/master/DevLibUtils/utils_readme/record/FileRecord.md )
47+
4648# == 使用相关 ==
4749
4850## 线程工具类 使用 - [ DevThreadManager] ( https://github.com/afkT/DevUtils/blob/master/DevLibUtils/src/main/java/dev/utils/common/thread/DevThreadManager.java )
@@ -161,135 +163,6 @@ class WifiHotUse {
161163```
162164
163165
164- ## 日志、异常文件记录保存工具类 使用 - [ FileRecordUtils] ( https://github.com/afkT/DevUtils/blob/master/DevLibUtils/src/main/java/dev/utils/app/FileRecordUtils.java )
165-
166- > [ FileRecordUse] ( https://github.com/afkT/DevUtils/blob/master/app/src/main/java/com/dev/use/record/FileRecordUse.java ) 介绍了配置参数及使用
167-
168- ``` java
169- /**
170- * detail: 日志、异常文件记录保存使用方法
171- * Created by Ttt
172- */
173- class FileRecordUse {
174-
175- // 日志TAG
176- private static final String TAG = FileRecordUse . class. getSimpleName();
177-
178- /**
179- * 日志、异常文件记录保存使用方法
180- */
181- private void fileRecordUse () {
182- // AnalysisRecordUtils
183-
184- // DevLoggerUtils
185-
186- // FileRecordUtils
187-
188- // DevLoggerUtils => 内部的 Utils, 实际和 FileRecordUtils 代码相同, 使用方式一致
189-
190- // == 记录文件 ==
191-
192- // AnalysisRecordUtils 工具类使用方法
193- analysisRecord();
194-
195- // DevLoggerUtils、FileRecordUtils 工具类
196- logRecord();
197- }
198-
199- /* * 日志文件夹路径 */
200- public static final String LOG_SD_PATH = Config . SDP_PATH + File . separator + " Logger" + File . separator;
201-
202- /**
203- * AnalysisRecordUtils 工具类使用方法
204- */
205- private void analysisRecord () {
206-
207- // 默认存储到 android/data/包名/cache文件/ , 可以自己特殊设置
208- // AnalysisRecordUtils.setLogStoragePath(SDCardUtils.getSDCardPath());
209-
210- // 设置存储文件夹名
211- AnalysisRecordUtils . setLogFolderName(AnalysisRecordUtils . getLogFolderName() + " /v" + AppUtils . getAppVersionName());
212-
213- // AnalysisRecordUtils.HH、MM、SS => 以对应的时间, 创建文件夹 HH_23/MM_13/SS_01 依此类推,放到对应文件夹, 不传则放到当日文件夹下
214- AnalysisRecordUtils . FileInfo fileInfo = AnalysisRecordUtils . FileInfo . obtain(" test_log.txt" , " 测试记录" , AnalysisRecordUtils . HH );
215-
216- // // 存储路径、存储文件夹、文件名、记录功能提示、时间间隔
217- // // FileInfo(String storagePath, String folderName, String fileName, String fileFunction, @AnalysisRecordUtils.TIME int fileIntervalTime)
218- //
219- // // ==
220- //
221- // AnalysisRecordUtils.FileInfo.obtain("test_log.txt", "测试记录");
222- //
223- // AnalysisRecordUtils.FileInfo.obtain("TempRecord","test_log.txt", "测试记录");
224- //
225- // AnalysisRecordUtils.FileInfo.obtain(SDCardUtils.getSDCardPath(),"TempRecord","test_log.txt", "测试记录");
226- //
227- // // ==
228- //
229- // AnalysisRecordUtils.FileInfo.obtain("test_log.txt", "测试记录", AnalysisRecordUtils.HH);
230- //
231- // AnalysisRecordUtils.FileInfo.obtain("TempRecord","test_log.txt", "测试记录", AnalysisRecordUtils.MM);
232- //
233- // AnalysisRecordUtils.FileInfo.obtain(SDCardUtils.getSDCardPath(),"TempRecord","test_log.txt", "测试记录", AnalysisRecordUtils.SS);
234-
235- // =============================
236-
237- // 存储到 android/data/包名/LogFolderName/2018-08-23/LogFolderName/xxx/log.txt
238- AnalysisRecordUtils . record(fileInfo, " 急哦撒点娇阿什库大街阿奎罗圣诞节几点佛山的金佛i适当放宽就是可怜的" );
239-
240- // 存储到 sdcard/LogFolderName/2018-08-23/SDRecord/xxx/log.txt
241- AnalysisRecordUtils . record(AnalysisRecordUtils . FileInfo . obtain(SDCardUtils . getSDCardPath()," SDRecord" ," sd_log.txt" , " 根目录保存" , AnalysisRecordUtils . HH ),
242- " 奇葩奇葩奇葩撒开排名第" );
243-
244- // 存储到 sdcard/特殊地址/LogFolderName/2018-08-23/OtherRecord/xxx/log.txt
245- AnalysisRecordUtils . record(AnalysisRecordUtils . FileInfo . obtain(SDCardUtils . getSDCardPath() + " /特殊地址" ," OtherRecord" ," log.txt" , " 临时地址" , AnalysisRecordUtils . HH ),
246- " 手机发的啥地方加快速度加快" );
247-
248- // =
249-
250- // 保存异常信息
251- NullPointerException nullPointerException = new NullPointerException (" 报错啦, null 异常啊" );
252- // 记录日志
253- AnalysisRecordUtils . record(fileInfo, ErrorUtils . getThrowableMsg(nullPointerException));
254- }
255-
256- /**
257- * DevLoggerUtils、FileRecordUtils 工具类
258- */
259- private void logRecord () {
260- // = 异常日志保存 =
261-
262- try {
263- String s = null ;
264- s. indexOf(" c" );
265- } catch (NullPointerException e) {
266- // 保存的路径
267- String fName = LOG_SD_PATH + System . currentTimeMillis() + " .log" ;
268- // 保存日志信息
269- DevLoggerUtils . saveErrorLog(e, fName, true );
270- // --
271- // 保存自定义头部、底部信息
272- DevLoggerUtils . saveErrorLog(e, " 头部" , " 底部" , LOG_SD_PATH , System . currentTimeMillis() + " _存在头部_底部.log" , true );
273- // --
274- // 自定义(无设备信息、失败信息获取失败) - 正常不会出现,所以其实这个可以不用
275- String [] eHint = new String []{" DeviceInfo = 获取设备信息失败" , " 获取失败" };
276- // 保存的路径
277- fName = LOG_SD_PATH + System . currentTimeMillis() + " _orgs.log" ;
278- // 保存日志信息
279- DevLoggerUtils . saveErrorLog(e, fName, true , eHint);
280-
281- // == FileRecordUtils 使用方法 ==
282-
283- FileRecordUtils . saveErrorLog(e, " 头部" , " 底部" , LOG_SD_PATH , System . currentTimeMillis() + " _存在头部_底部.log" , true , true , " xaskdjaslkd" );
284-
285- FileRecordUtils . saveLog(" 撒开多久阿什利" , " 头部" , " 底部" , LOG_SD_PATH , System . currentTimeMillis() + " _存在头部_底部.log" , true , " qqqqweqweqwe" );
286- }
287- }
288-
289- }
290- ```
291-
292-
293166## 缓存工具类 使用 - [ DevCache] ( https://github.com/afkT/DevUtils/blob/master/DevLibUtils/src/main/java/dev/utils/app/cache/DevCache.java )
294167
295168> [ CacheUse] ( https://github.com/afkT/DevUtils/blob/master/app/src/main/java/com/dev/use/cache/CacheUse.java ) 介绍了配置参数及使用
0 commit comments