当前位置: 首页 > news >正文

医药公司网站建设珠宝网站开发的背景

医药公司网站建设,珠宝网站开发的背景,优化方案2021版语文答案,关键词seo优化排名公司前言 主线程的Handler 主要依赖于 ActivityThread#xff0c;Android是消息驱动#xff0c;比如view的刷新#xff0c;activity的创建等#xff0c;如果能打印系统层Handler消息日志#xff0c;就需要对于系统层的Handler 进行Hook 原理 ActivityThread中 mH对象主要负责…前言 主线程的Handler 主要依赖于 ActivityThreadAndroid是消息驱动比如view的刷新activity的创建等如果能打印系统层Handler消息日志就需要对于系统层的Handler 进行Hook 原理 ActivityThread中 mH对象主要负责整个主线程的事件传递拿到mH传递的消息并打印出来就可以Handler的消息处理机制会先处理Message的Callback 再处理handlerMessage 核心代码 ActivityThread.java final H mH new H();class H extends Handler {public static final int BIND_APPLICATION 110;UnsupportedAppUsagepublic static final int EXIT_APPLICATION 111;UnsupportedAppUsagepublic static final int RECEIVER 113;...public static final int EXECUTE_TRANSACTION 159;} Handler.java public void dispatchMessage(NonNull Message msg) {if (msg.callback ! null) {handleCallback(msg);} else {if (mCallback ! null) {if (mCallback.handleMessage(msg)) {return;}}handleMessage(msg);}} 如果能给系统的Handler 设置上 callback 那每次系统消息传递 就可以先回调我们的callback  只要我们返回false 系统正常运行因为mH是静态的通过代码反射invoke的就是系统的 再反射获取 Handler的mCallback对象设置我们自己的Callback实现类即可 源码 private void hookSystemHandler() throws IllegalAccessException, NoSuchFieldException, ClassNotFoundException, NoSuchMethodException, InvocationTargetException {Class? activityThreadClass Class.forName(android.app.ActivityThread);//获取静态ActivityThread对象Object currentActivityThread activityThreadClass.getDeclaredMethod(currentActivityThread).invoke(null);Field mHField activityThreadClass.getDeclaredField(mH);mHField.setAccessible(true);//获取mH对象 系统的Object mH mHField.get(currentActivityThread);Field mCallbackField Handler.class.getDeclaredField(mCallback);mCallbackField.setAccessible(true);//替换为我们的CallbackmCallbackField.set(mH,new MyHookHandler());}class MyHookHandler implements Handler.Callback {public MyHookHandler() {}Overridepublic boolean handleMessage(NonNull Message msg) {//我们的Handler 已经完成了替换//这里对所有系统消息进行拦截Log.d(tag-message,msg.toString());// 要保证系统运行正常 还得让原本handler 继续处理 // originalHandler.handleMessage(msg);return false; //不拦截}} 最终效果 D { when-1ms what159 objandroid.app.servertransaction.ClientTransaction196c92db targetandroid.app.ActivityThread$H }D { when-6ms what159 objandroid.app.servertransaction.ClientTransaction9bc76abb targetandroid.app.ActivityThread$H }D { when-20ms what159 objandroid.app.servertransaction.ClientTransaction18771a77 targetandroid.app.ActivityThread$H }
http://www.hkea.cn/news/14583923/

相关文章:

  • 做得比较好的公司网站做网站哪个便宜
  • 网站建设风险评估个人网页模板免费下载
  • 网站域名解析页面太原网络广告公司
  • 企业网站建设成本qq刷网站空间
  • 网站的申请网站推广方案中评价效果是指
  • 大网站设计wordpress 如何去掉图片地址
  • 外链建设都需要带网站网址注册公司材料怎么准备
  • 做餐饮加盟的网站常州做半导体的公司
  • 社交网站做强自己做网站的步骤
  • 东莞网站建设用哪种好网站建设与管理插图
  • 上海网站建设收费小豹子韬韬是哪个网站做的
  • 永康电子商务网站建设公司网上怎么查公司信息
  • 怎么在网站空间上传文件p2p理财网站开发流程图
  • 做网站的html代码格式网页制作公司有哪些职位
  • 网站开发软件d网站网络推广
  • 网站免费推广平台php网站开发范例
  • 网站设计可以吗做一个网站花费多少钱
  • 有没有介绍做私家导游的网站东莞seo技术培训
  • 网站js聊天代码企业如何在工商网站上做公示
  • 郑州php网站开发培训wap网站是什么意思啊
  • 无锡市住房建设局网站wordpress新建页面子页面
  • 基于flash网站设计公司网站制作注意什么
  • 泉州做网站优化的公司燕郊网站制作
  • 如何获取网站开发语言广州免费旅游景点大全
  • 做网站在桂林网站seo
  • 海南建设大厅网站网站如何被谷歌收录
  • 许昌市建设投资有限公司 网站网站建设 点指成名
  • 请问下网站开发怎么弄wordpress博客内容预览
  • 北仑网站网页建设吴忠市建设局官方网站
  • 平山县建设局网站django做网站怎样