公司:#滴滴 #美團(tuán)
崗位:#軟件測(cè)試工程師
關(guān)鍵字:#adb #Android #移動(dòng)端app #Appium #java
1.主線(xiàn)程執(zhí)行了耗時(shí)操作,比如數(shù)據(jù)庫(kù)操作或網(wǎng)絡(luò)編程
2.其他進(jìn)程(就是其他程序)占用CPU導(dǎo)致本進(jìn)程得不到CPU時(shí)間片,比如其他進(jìn)程的頻繁讀寫(xiě)操作可能會(huì)導(dǎo)致這個(gè)問(wèn)題。
細(xì)分的話(huà),導(dǎo)致ANR的原因有如下幾點(diǎn):
1.耗時(shí)的網(wǎng)絡(luò)訪問(wèn)
2.大量的數(shù)據(jù)讀寫(xiě)
3.數(shù)據(jù)庫(kù)操作
4.硬件操作(比如camera)
5.調(diào)用thread的join()方法、sleep()方法、wait()方法或者等待線(xiàn)程鎖的時(shí)候
6.service binder的數(shù)量達(dá)到上限
7.system server中發(fā)生WatchDog ANR
8.service忙導(dǎo)致超時(shí)無(wú)響應(yīng)
9.其他線(xiàn)程持有鎖,導(dǎo)致主線(xiàn)程等待超時(shí)
10.其它線(xiàn)程終止或崩潰導(dǎo)致主線(xiàn)程一直等待。