新闻详情
天宏平台-隐藏功能大揭秘
StrictMode是Strict和Mode的合并,在英语中,strict表示“严格的”,mode表示“模式”,因此,StrictMode就是“严格的模式”,或叫“严苛模式”。
既然是严苛的,那么肯定是对什么东西有限制。因为严格的老师肯定不会对坏学生纵容的,星辉招商客服,对吧,所以可以想见StrictMode是用来监测Android中的什么东西。
是的,聪明如你果然猜对了。StrictMode就是用来指定一系列策略(policy),对相应规则(rule)进行检查并且做出反应。
这些策略大致包括Android的编码规范,例如监控在主线程(UI线程)中的操作,等等。
StrictMode有不同的策略,每种策略又用不同的规则(rule),每种规则又对应不同的方法,一旦规则被违反,这些对应的方法就会被用来做出反应。
Penalty是英语“处罚”的意思,所以凡是以penalty开头的方法都表示违规时要做出什么反应。
对于每个策略,我们可以指定多个处罚形式,而处罚也是从最不严重的到最严重(从打印日志到直接crash(崩溃))依次执行。
可以看到,在Logcat中总会有StrictMode开头的Log。因此,我们可以这样查找所有StrictMode的日志:
下面的代码,如果我们进入、退出多次LeakyActivity, 则会触发
Settings(设置) - Developer options(开发者选项),然后开启它。开启之后,一旦应用在主线程中执行耗时操作,屏幕就会闪烁。
相关推荐:
