android 查看内存工具,Android中有什么好的查看代码性能的工具,类似内存泄漏,或者分析程序性能的工具?...

StrictMode是Android提供的一个运行时检测工具,用于发现主线程中的IO操作和其他不规范行为。通过在Application的onCreate()中启用StrictMode,可以设置ThreadPolicy和VmPolicy来检测并记录潜在问题,帮助开发者优化应用性能。当检测到违规操作时,StrictMode会根据预设的惩罚策略,如打印日志,来提示开发者。启用StrictMode有助于提升应用的响应速度和用户体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

楼主主要的问题是不知道都有什么地方在主线程使用了耗时操作,如果是这样,开启StrictMode无疑可以帮你很快找到需要关注的代码.

StrictMode ,严苛模式,是 Android 提供的一种运行时检测机制,用于检测代码运行时的

一些不规范的操作,最常见的场景是用于发现主线程的 IO 操作。

StrictMode 包含两个维度的概念:

Policy(策略): 是指 StrictMode 对一些违规操作的发现策略,分为两类:一类是针对一

个具体的线程(ThreadPolicy),另一类是针对虚拟机的所有对象(VMPolicy)。

Penalty(惩罚):是指 StrictMode 发现违规操作后进行惩罚的方式,譬如绘制红框、打

印日志、显示对话框、杀掉进程等。

Android 在很多关键的代码路径上都植入了 StrictMode, 譬如磁盘读写、网络访问、系统

进程启动等。StrictMode 会根据设置的策略进行检查,如果某个进程在代码运行时出现了

违规操作,那么就会受到”惩罚”。

比如下面这段代码,如果有违规,就会在logcat打印违规操作的位置以及调用堆栈信息。

android.app.Application的onCreate开启StickMode:

public void onCreate() {

if (DEVELOPER_MODE) {

StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder().detectAll().penaltyLog().build());

StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder().detectAll().penaltyLog().build());

}

super.onCreate();

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值