博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
代理原有的Handler.Callback,感知Application onCreate的结束时间
阅读量:4510 次
发布时间:2019-06-08

本文共 1303 字,大约阅读时间需要 4 分钟。

public class HackCallback implements Handler.Callback {

private static final String TAG = "Matrix.HackCallback";
private static final int LAUNCH_ACTIVITY = 100;
private static final int ENTER_ANIMATION_COMPLETE = 149;
private static final int CREATE_SERVICE = 114;
private static final int RECEIVER = 113;
private static boolean isCreated = false;
private final Handler.Callback mOriginalCallback;
public HackCallback(Handler.Callback callback) {
this.mOriginalCallback = callback;
}
@Override
public boolean handleMessage(Message msg) {
// MatrixLog.i(TAG, "[handleMessage] msg.what:%s begin:%s", msg.what, System.currentTimeMillis());
if (msg.what == LAUNCH_ACTIVITY) {
Hacker.isEnterAnimationComplete = false;
} else if (msg.what == ENTER_ANIMATION_COMPLETE) {
Hacker.isEnterAnimationComplete = true;
}
if (!isCreated) {
if (msg.what == LAUNCH_ACTIVITY || msg.what == CREATE_SERVICE || msg.what == RECEIVER) {
//发送启动Activity等消息,认为是Application onCreate的结束时间
Hacker.sApplicationCreateEndTime = System.currentTimeMillis();
Hacker.sApplicationCreateEndMethodIndex = MethodBeat.getCurIndex();
Hacker.sApplicationCreateScene = msg.what;
isCreated = true;
}
}
if (null == mOriginalCallback) {
return false;
}
return mOriginalCallback.handleMessage(msg);
}

转载于:https://www.cnblogs.com/hyhy904/p/11295905.html

你可能感兴趣的文章
linux 安装mysql数据库——yum安装法
查看>>
Visual Studio 2008 不能更改安装目录的原因
查看>>
关于求最大公约数
查看>>
C#高级编程
查看>>
Knowladge_网站学习_RSS 学习
查看>>
TCP/IP,Web世界的基本规则
查看>>
c++ 子类构造函数初始化及父类构造初始化
查看>>
Analysis on Human Various Emotional Expression
查看>>
DataGridView DataGridViewCheckBoxColumn编辑时实时触发事件
查看>>
SignalR---服务端
查看>>
PlayerPrefs存储Vector3等结构数据
查看>>
LightOJ - 1422 Halloween Costumes (区间DP)
查看>>
Dubbo架构设计详解
查看>>
谁终将点燃闪电,必长久如云漂泊
查看>>
小诗句集萃四
查看>>
软件之美: 易用性设计的目标及准则
查看>>
异步回调,事件,线程池与协程
查看>>
matlab函数:c2d离散化函数(待完善)
查看>>
java并发多面性
查看>>
TFS 测试用例导入、导出工具
查看>>