Android日志工具的封装
原本我是一个不怎么喜欢写日志,也不怎么喜欢看日志的人。App中我只看网络请求的日志,网络请求的日志一般网络请求的框架中都会有日志打印。崩溃的日志也不需要自己去写。最近的项目中,要用手机连接U盘。手机USB接口被U盘占用了,看不到日志,很烦,崩溃了不知道问题出在哪里。看不到日志怎么办呢?首先我想到的是adb命令,使用网络连接手机,查看日志。这个方法理论上应该是可以的。然而总是连接不到手机。
于是我只能选择自己写日志文件了。class HyLog private constructor(block: HyLog.() -> Unit) { /** * 是否开启日志 */ var showLog: Boolean = false /** * 日志标签 */ var tag = "hyjiao" /** * 是否保存到文件 */ var saveFile = false /** * 日志文件保存的位置 */ var logPath = "" init { block() } companion object { private lateinit var hyLog: HyLog fun initLog(block: HyLog.() -> Unit) { hyLog = HyLog(block) } fun v(log: String, tag: String = hyLog.tag) { if (hyLog.showLog) { if (hyLog.saveFile) { writeLogFile(log, "v", tag) } Log.i(tag, log) } } fun i(log: String, tag: String = hyLog.tag) { if (hyLog.showLog) { if (hyLog.saveFile) { writeLogFile(log, "i", tag) } Log.i(tag, log) } } fun d(log: String, tag: String = hyLog.tag) { if (hyLog.showLog) { if (hyLog.saveFile) { writeLogFile(log, "d", tag) } Log.i(tag, log) } } fun w(log: String, tag: String = hyLog.tag) { if (hyLog.showLog) { if (hyLog.saveFile) { writeLogFile(log, "w", tag) } Log.i(tag, log) } } fun e(log: String, tag: String = hyLog.tag) { if (hyLog.showLog) { if (hyLog.saveFile) { writeLogFile(log, "e", tag) } Log.i(tag, log) } } /** * 将日志写到文件中 */ private fun writeLogFile(log: String, type: String, tag: String) { val dateTime = HyUtil.formatDataTime(System.currentTimeMillis(), "yyyy-MM-dd HH:mm:ss.SSS") val myLog = "$dateTime/$type/$tag:$log " val file = File(hyLog.logPath) if (!file.exists()) { file.createNewFile() } file.appendText(myLog, Charsets.UTF_8) } } }
日志工具的使用:
首先在Application的onCreate()中进行初始化设置//设置是否日志工具 HyLog.initLog { showLog = BuildConfig.DEBUG saveFile = BuildConfig.DEBUG logPath = externalCacheDir!!.absolutePath + File.pathSeparatorChar + "mylog.log" }
然后就可以在需要打印日志的地方添加日志了 HyLog.i("MyApp:onCreate()") HyLog.i(log = "MainActivity:onCreate()", tag = "MainActivity")
中国水电八局技校获批筹设湖南工程技师学院日前,湖南省人力资源和社会保障厅正式签发关于同意筹设湖南工程技师学院的批复,同意以中国水电八局高级技工学校为主体筹设湖南工程技师学院,筹设期三年。中国水电八局高级技工学校是一所国有
陕西东庄水利枢纽工程主体进入实质性施工阶段8月16日,中国水电八局承建的陕西东庄水利枢纽水垫塘二道坝工程右岸边坡EL750处顺利完成首次爆破作业,正式进行边坡开挖施工。本次爆破是东庄水利枢纽工程主体施工的第一炮,标志着该工
湖南犬木塘水库工程首仓混凝土浇筑9月13日,中国水电八局承建的湖南犬木塘水库工程枢纽项目右岸主体首仓混凝土开始浇筑,比原计划时间提前47天。该项目位于湖南省邵阳市境内资水中上游,水库总库容1。4亿立方米,年发电量
痔疮又犯了,买了三千块钱中药难以启齿的事,是真难受啊,去医院拿了三少多的中药,医生说体质原因,我体内湿气大,容易长痘痘一类的东西,我不敢动手术,他说可以吃中药调理调理,结果最后看费用,3000多,我心里真是一
劳斯莱斯火了,沃尔沃也火了虽然大部分人不是劳斯莱斯目标客户,但是他请代言人这个事真不知道怎么想的,请网红?网红在大众眼里一直不是一个褒义词,一直是存在争议的。就连王思聪都公开说以后不会买劳斯莱斯了。可想而知
苹果手机在这个地方没信号就是这个地方,信号是真的差。气死我了从地图上可以看出来,人口密度相当的大,我每次在这里打车的时候都是在宾馆楼下连着无线网,看着车快来了我就去路边,因为没有无线网以后我的手机就是砖,
2021年中国企业培训行业研究报告企业培训丨研究报告核心摘要政策支持,推动职业技能培训终身化,明确企业的培训主体地位,提升企业参与度经济转型,新常态下,企业面临人才发展与科技创新的时代挑战,亟待增强创新力社会变迁,
2021年中国二次元产业研究报告二次元丨研究报告核心摘要中国的二次元产业已经步入爆发期。具体表现为,2020年整体市场规模达可达一千亿,年增速达到32。7。泛二次元用户预计2023年达到5亿。单笔投融资金额显著上
2021年中国企业级SaaS行业研究报告SaaS丨洞察报告核心摘要多力齐发,SaaS发展进入新上升期企业数字化转型浪潮新冠疫情人口代际变化推动SaaS行业阔步前进。随着企业对SaaS接受度提升,应用场景从边缘辅助向核心业
2021年中国智能按摩椅行业研究报告智能按摩椅丨洞察报告核心摘要发展背景现阶段,中国已成为全球智能按摩椅产业链的中心消费升级利好大健康发展,智能按摩椅行业迎来发展契机智能科技在家居产品中被广泛应用,极大提升消费体验,
2021年中国HRSaaS行业研究报告SaaS丨洞察报告核心摘要概念界定HRSaaS简单来说,就是人力资源服务软件,是随着互联网的成熟产生的一种完全创新的软件应用模式。HRSaaS厂商将应用软件统一部署在自己的服务器上