本帖最后由 洋葱先生的葱 于 2016-6-14 11:56 编辑
Log日志输出在实际开发的过程中,使用频率是非常高的,每天都在用,那么问题容易出在哪个环节?体现在控制!因为Log输出的往往都是项目的核心数据,也就是业务数据。当项目运行在生产环境下的时候,一旦产生数据泄漏,产生的风险往往都是不可控的。另外还有一个问题就是,如果大规模的日志输出,没有办法进行准确定位,那么Log日志的输出是否可以携带定位信息?所以,我分享给大家一个我一直在使用的Log输出工具,仅供大家参考。
Eclipse下,随便生成一个Android项目,基础文件生成出来之后,会有一个很特别的一级目录gen,这个目录下面有会一个二级目录,二级目录下面只有两个固定的文件,一个是R文件,这个文件里面是自动生成的,里面主要标识的是项目内所有资源的定位信息。另外一个文件就是BuildConfi.java,这个文件里面有一个静态的boolean值, 这个字段会动弹跟踪app签名情况。开发阶段,使用的都是debug签名,所以这个字段是true,release签名打上以后,这个字段会自动切换为false。所以我们控制日志输出,就可以用这个字段做文章。(Android Studio 一样存在这个文件,只是存放位置有所不同)。
一般情况下,我把整个项目的数据数据根据周期分为运行时数据和持久化数据,根据属性分为业务数据和逻辑数据,这样理解方便做数据分流和转储。运行时数据大部分都是通过和服务器进行交互获取,跟踪这部分数据推荐两个工具:Findder,客户端程序,抓包工具。JsonHandler,Chrome浏览器插件,主要是进行json格式数据的可视化和合法性的处理。通过这两个工具,第一步校验接口是否通畅,第二步校验交互数据是否符合规范。Log日志大部分是使用在Logic控制器内。
【附件为Log工具代码】
|
|