都知道避免ANR,但该如何分析,定位,解决? (mp.weixin.qq.com)

【简介】

application not responding 程序无响应。程序在规定的时间内没有响应。
超时时间的计数一般是从按键分发给app开始。超时的原因一般有两种:

1.当前的事件没有机会得到处理(即UI线程正在处理前一个事件,没有及时的完成或者looper被某种原因阻塞住了);
2.当前的事件正在处理,但没有及时完成。

点击查看全文 >>

@DataFunBoy 2020-04-28 08:55分享 / 0个评论
赞过的人: IT技术博客大学习 DataFunBoy
要不要再学学下面的文章?
Android Fragment 被回收后显示空白问题解决方案 (mp.weixin.qq.com)
TabLayout+ViewPager+FragmentStatePagerAdapter+Fragment实现起来很容易(本文以此作为案例分析),当App处于后台一段时间后(可能10分钟以后或者更多),再进入App时,Fragment显示区域就变成看空白。这种情况是被系统给回收掉了。
by @code小生 2020-07-26 23:26 分享 查看详情
Android Bitmap 详解:关于 Bitamp 你所要知道的一切 (mp.weixin.qq.com)
在平时的 Android 开发中,与 Bitmap 打交道可以说是再常见不过的事了。我在写这篇文章之前,对于 Bitmap 相关的一些东西总是模模糊糊,比如 Bitmap 的文件大小还有占用内存大小的区别,还有对 Bitmap 压缩的几种方法各自的区别和通途是什么,等等
by @code小生 2020-07-21 23:34 分享 查看详情
简单分析 App 进程 Crash 机制 (mp.weixin.qq.com)
工作中遇到后台Service挂掉后(弹出停止运行),很久没有重启,分析log发现进程抛出FATAL EXCEPTION后并没有被杀,很久后才被杀掉重启,迷惑,遂看看具体的App挂掉流程是什么样的。
by @code小生 2020-07-21 23:33 分享 查看详情
快应用 IDE 定制 Devtools 元素面板系列一:背景需求及方案分析 (quickapp.vivo.com.cn)
快应用开发工具(IDE)支持 web 预览功能。此次定制 web 预览调试器(devtools)的 elements 面板,以支持审查真实的快应用元素。 本篇文章介绍背景需求及方案分析。
by @杨琼璞 2020-06-16 17:52 分享 查看详情
每个程序员都必须知道的8种通用数据结构 (mp.weixin.qq.com)
数据结构是一种特殊的组织和存储数据的方式,可以使我们可以更高效地对存储的数据执行操作。数据结构在计算机科学和软件工程领域具有广泛而多样的用途。
by @code小生 2020-06-08 23:50 分享 查看详情
JVM源码分析之Attach机制实现完全解读 (club.perfma.com)
在讲这个之前,我们先来点大家都知道的东西,当我们感觉线程一直卡在某个地方,想知道卡在哪里,首先想到的是进行线程dump,而常用的命令是jstack ,我们就可以看到如下线程栈了
by @PerfMa社区 2020-05-26 11:00 分享 查看详情
进程物理内存远大于Xmx的问题分析 (club.perfma.com)
最近经常被问到一个问题,”为什么我们系统进程占用的物理内存(Res/Rss)会远远大于设置的Xmx值”,比如Xmx设置1.7G,但是top看到的Res的值却达到了3.0G,随着进程的运行,Res的值还在递增,直到达到某个值,被OS当做bad process直接被kill掉了。
by @PerfMa社区 2020-05-12 14:47 分享 查看详情
JVM源码分析之JDK8下的僵尸(无法回收)类加载器 (club.perfma.com)
现象是有一些类加载器是作为key放到WeakHashMap里的,但是经历过多次full gc之后,依然坚挺地存在内存里,但是从代码上来说这些类加载器是应该被回收的,因为没有任何强引用可以到达这些类加载器了
by @PerfMa社区 2020-04-21 16:25 分享 查看详情
JVM源码分析之System.currentTimeMillis及nanoTime原理详解 (club.perfma.com)
有同事问了我一个现象很诡异的问题,说JDK7和JDK8下的System.nanoTime()输出完全不一样,而且差距还非常大,是不是两个版本里的实现不一样,之前我也没注意过这个细节,觉得非常奇怪,于是自己也在本地mac机器上马上测试了一下
by @PerfMa社区 2020-04-14 11:35 分享 查看详情
硬核科普:携号转网的技术原理分析 (www.huxiu.com)
一个数据冗余,难倒英雄汉。

我们的手机号,实际上有两个,分别是IMSI和MDN。

IMSI的全名是International Mobile Subscriber Identity,国际移动用户识别码。它是一种“永久用户标识”,每一个手机SIM卡,对应一个IMSI号码。

IMSI号码由三部分组成,分别是:
1、MCC (Mobile Country Code) 移动国家码;
2、MNC (Mobile Network Code) 移动网络码;
3、MSIN (Mobile Subscriber Identity) 移动用户识别码;

MCC是3位数字(中国是460),MNC是2-3位数字,MSIN是10-11位数字。加起来的IMSI,一般不超过15位,通常就是15位(例如我们国家)。
by @shengting 2020-03-24 11:28 分享 查看详情