Hello World

Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub. Quick StartCreate a new p

Read More...

New API for App Get Exit Reasons

ExampleCode:‘’’var mgr : ActivityManager = getSystemService(Context.ACTIVITY_SERVICE) as ActivityManagervar list : MutableList = mgr.getHistoricalProcessExitReasons(null, 0,0)Log.i(“Maple”, “ExitInfoList size:” + list.si

Read More...

Touch Event Dispatch Procedure in Android 10

触摸事件只会分发给可见的能够接受事件的窗口 在P版本上相关的成员ViewRootImplWindowManagerServiceInputDispatcher Q版本相关的成员ViewRootImplWindowManagerServiceSurfaceFlingerInputDispatcher 当前窗口在执行完onResume后由框架向WindowManagerService添加窗口,并开始接收Input事件 1234567891

Read More...

监控与故障管理(5)

终端监控与管理与云服务中的监控类似,主要是对流程中的日志进行记录,在故障发生前或发生是发出告警,并将相关联的日志分析,给出大概的建议。当然,不同点也很多。云服务日志的记录、分析及告警主要消耗的是服务提供者的算力,而终端的日志记录上传消耗的是用户的算力及流量。参考前面对故障监控管理模式以及AOSP的分析,下面主要讨论一个通用终端监控系统所具备的功能及各模块的职责。

Read More...

监控与故障管理(4)

从上面几篇叙述中可以了解到通用故障检测工具箱里应有的工具。下面来简要描述App生命周期里与此相关的工具开发阶段:1.编程语言自带以及Os扩展的异常处理机制Jdk UncaughtExceptionAndroid AndroidException及子类2.运行期状态获取接口(Debug、Status、Usage)3.编译器支持的Sanitizer4.Android Studio及集成的工具 调优阶段:在开发者者选项中各个模块为调试所添加的

Read More...

监控与故障管理(3)

错误恢复模式(参考书籍Patterns For Fault Tolerant Software第6章):1.故障隔离(Quarantine)对故障的服务或者设备进行隔离,例如代理其提供的服务2.集中恢复(Concentrated Recovery)对重要恢复有显著的用户提示,避免误操作导致无法恢复的错误3.Error Handler错误处理器,例如UncautghtExceptionHandler4.重启重启进程,进程组或系统5.回滚返

Read More...

监控与故障管理(2)

监控运行实体:无论对于系统监控抑或应用监控,监控应该在部署在任意可能出现问题的位置。如driver、kernel、service、framework以及应用本身。监控可以是异常处理代码中的一段日志,也可以是很长逻辑结果的一个校验。可以是重要事件的记录,也可以是当前状态的记录。可以运行在当前执行线程中,也可以是线程外甚至进程外。如果能够在任意两行代码之间记录日志,我们便能够通过日志找到任意两行之间的问题。综合性能的考虑,监控的目标是在尽可

Read More...

监控与故障管理(1)

一般有追求的软件公司在业务范围、或团队规模扩大后都会引入所谓的监控系统,用于监控已有系统的运行状态,以支撑各种问题的预测与定位。在web服务领域中,APM(应用性能分析)的使用或者DevOps方式运作已经相当普遍了,例如阿里有鹰眼系统用于支撑其支付淘宝业务,腾讯有bugly支撑微信及各种手游。 谷歌总结其DevOps的实践经验整理成SRE运维解密(2012)。同年,gartner将APM作为一个技术热点详细分析了其商业模型。如今(201

Read More...

Mobile APMs

APM: 国内:阿里:https://help.aliyun.com/document_detail/87906.html?spm=a2c4g.11186623.6.545.154a7d17zjSNFA腾讯:https://bugly.qq.com/v2/report百度:https://cloud.baidu.com/product/apm.html网易:http://apm.netease.com/携程:https://zhuanl

Read More...

The generation of the backtrace

libbacktrace初始提交-https://android-review.googlesource.com/c/platform/system/core/+/66528debuggerd替换libbacktrace-https://android-review.googlesource.com/c/platform/system/core/+/66946rewrite libbacktrace in cpphttps://andr

Read More...