Kwilizwe le-Android, ukudibana neempazamo kunye neempazamo kwizicelo okanye inkqubo ayiqhelekanga. Bobabini abasebenzisi kunye nabaphuhlisi bahlala bedibana nemiyalezo engalindelekanga, ukungqubana, okanye indlela yokuziphatha engaqhelekanga efuna ulwazi oluneenkcukacha malunga nokwenzekayo ngaphakathi kwesixhobo ukusombulula.
Ukufikelela kunye nokuqonda iingxelo ze-bug kwi-Android kunokubonakala ngathi ngumsebenzi onzima ukuba awunamava., kodwa sisixhobo esisisiseko sokubona umthombo weengxaki kunye nokuphucula ukusebenza kwee-apps kunye nenkqubo ye-Android ngokwayo. Apha, sichaza ngokweenkcukacha ukuba ezi ngxelo zisebenza njani, loluphi ulwazi eziluqulathileyo, kwaye ungazivelisa njani kwaye uzisebenzise, nokuba ungumsebenzisi okanye umphuhlisi.
Ziziphi iimpazamo kunye nezigodo zokuwa kwi-Android?
Iingxelo ze-bug kwi-Android ziingqokelela ezibanzi zolwazi lobugcisa malunga nemeko yenkqubo kunye nezicelo ngexesha lokusilela okanye ingxaki. Ziquka iilogi zangaphakathi, ukulandelwa kwe-stack, ukulahla imemori, iinguqulelo zesicelo, isimo se-hardware, kunye nolunye ulwazi oluninzi. Kufana nokuthatha iX-reyi yesixhobo ukuze ubone ukuba kuqhubeka ntoni “ngaphakathi” xa kukho into engahambi kakuhle.
Ezi ngxelo azisebenzi kuphela kumagcisa okanye abaphuhlisi: Iya isiba yinto eqhelekileyo kumaqela enkxaso yobugcisa kwiiapps kunye neenkonzo, ezinje ngeAvast okanye uGoogle Play, ukucela iNgxelo yeBug xa umsebenzisi exela ibug ekunzima ukuyivelisa okanye ukuyiphanda ngescreenshots okanye iinkcazo ezilula.
Yeyiphi idatha equkwa yingxelo yebug ye-Android?
Ingxelo yokuwa kwe-Android idla ngokuveliswa kwifomathi ye-ZIP. kwaye inobunzima ngokulula amashumi okanye namakhulu eemegabytes, njengoko ibandakanya:
- Iilogi zenkqubo (logcat): Inika iinkcukacha ngazo zonke iziganeko ezenzekayo kusetyenziso kunye neenkonzo zesixhobo, ezicwangciswe ngokolandelelwano lwamaxesha kunye namanqanaba ahlukeneyo okubaluleka.
- Ulandelelwano lwemfumba: Babamba ukuhamba okuchanekileyo kokuphunyezwa kwekhowudi apho ukusilela okanye ukungabikho kwenzeke.
- Ukulahlwa kwenkumbulo kunye neenkcukacha zosetyenziso: Banceda ukuchonga iingxaki ngenxa yokunqongophala kwezixhobo okanye ukuvuza kwememori.
- Ulwazi malunga nee-apps ezisebenzayo kunye neenkonzo, iinguqulelo, kunye namanqanaba: Iluncedo kakhulu ekujongeni ukuba loluphi uhlobo lwesoftware ebisebenza ngexesha lempazamo.
- Imbali yemisebenzi yenkqubo kunye neziganeko: Oku kubandakanya ukuqala kunye nokumisa ii-apps, iinkqubo, usasazo lomnyhadala kunye nabamkeli, utshintsho lwesikrini, umsebenzi webhetri, kunye nokutshixa kokuvuka.
- Idatha ye-Hardware: Ubume boluvo, ukusetyenziswa kwe-CPU, iinkcukacha zemodeli yesixhobo, kunye nenguqulelo ye-Android.
- Ilog yenkqubo, iinkonzo, usetyenziso lwe-RAM, kunye neempazamo ze-ANR (iSicelo esingaphenduliyo)..
Ifayile engundoqo ngaphakathi kwe-ZIP yifayile yokubhaliweyo (.txt) ehlanganisa konke oku ngasentla, ngamanye amaxesha ihamba kunye nemethadatha, imifanekiso yesikrini, kunye ne-application-specific dumps. Ukufunda nokuhlalutya ezi fayile kunokuba luqilima ukuba awunamava, kodwa kubaphuhlisi, yigolide esulungekileyo xa kufikwa kwi-debugging kunye nokulungisa iimpazamo ezinzima ukufumana.
Uyenza njani ingxelo yokuphazamiseka kwi-Android?
Kukho iindlela ezininzi zokwenza iNgxelo yeBug kwi-Android, kodwa zonke zifuna ukuba uqale vula iiKhetho zoPhuhlisi kwisixhobo sakho. Oku kwenziwa ngokuya kwiiSetingi, kwaye ngokwesiqhelo:
- Uya ku Malunga nefowuni o Ulwazi lwesoftware.
- Ucinezela kasixhenxe ngokulandelelana kwi 'Build Number' ide inkqubo iqinisekise ukuba iiKhetho zoPhuhlisi zenziwe zasebenza.
Nje ukuba isebenze, ungakhetha kwiindlela ezininzi zokwenza ingxelo:
Ukusuka kwisixhobo (Indlela elula)
Le ndlela yeyona ilula kubasebenzisi abaninzi, njengoko yonke into yenziwa kwifowuni okanye ithebhulethi ngokwayo.
- Ukufikelela kwi Useto > Iinketho zomphuhlisi.
- Khangela ukhetho Thatha ingxelo yempazamo o Ngenisa ingxelo yebug kwaye uyidlale.
- Khetha uhlobo lwengxelo (idla ngokuba 'igcwele' okanye 'iyasebenzisana'). Kwiinguqulelo ezisebenzisanayo, unokongeza izikrini kunye nezimvo.
- Lindela ingxelo ukugqiba ukuvelisa (oku kungathatha ukusuka kwimizuzwana ukuya kwimizuzu emininzi, ngokuxhomekeke kwisixhobo).
- Xa igqityiwe, inkqubo iya kukwazisa ngesaziso, kwaye ungabelana ngayo ngokuthe ngqo nge-imeyile, i-Drive, okanye ezinye ii-apps.
Khumbula ukuba le fayile inokubandakanya ulwazi lomntu siqu okanye olubuthathaka, ngoko yabelana ngayo kuphela ngeenkonzo ezithembekileyo okanye abaphuhlisi.
Ukusebenzisa i-Android Debug Bridge (ADB)
Le ndlela iphambili kwaye yenzelwe abaphuhlisi okanye abasebenzisi abanezakhono zekhompyuter.
- Khuphela kwaye ufake i-Android SDK Platform-Tools (ibandakanya Adb).
- Kwisixhobo, kwakhona uvule i ukususa iibhagi kwi-USB ngaphakathi koKhetho loPhuhlisi.
- Qhagamshela ifowuni yakho ephathwayo okanye ithebhulethi kwiPC yakho nge-USB.
- Vula ikhonsoli okanye i-terminal kwikhompyuter yakho kwaye usebenze:
adb devices
(ukukhangela ukuba isixhobo sichongiwe)adb bugreport <ruta_de_destino>
(umzekelo,adb bugreport C:\BugReports\
)
Ukusuka kwi-emulator ye-Android
Xa uvavanya kwi-emulator, Unokwenza ingxelo yegciwane ngokuvula iziLawuli ezongeziweyo., kunye nokusebenzisa umsebenzi Ingxelo yebugKhetha "Fayila impazamo," yongeza ulwazi olongezelelweyo ukuba uyanqwenelwa, kwaye ugcine ingxelo eyenziweyo ukuze uhlalutywe kamva.
Indlela yokutolika okanye ukubonisana nezikhuni zokuwa?
Iingxelo ze-bug kwi-Android azenzelwanga ukuba zifundwe ngokuthe ngqo ngumsebenzisi oqhelekileyo, kodwa kukho iindawo ezithile ezifikeleleka ngakumbi:
- Ukuba uvula i-ZIP kwaye ufake ifayile ingxelo yebugre-XXXX.txt Uza kubona amacandelo ahlukeneyo, afana nenkqubo yelogs, iilogi zesiganeko, ukulahla imemori, iinkqubo ezisebenzayo, izicelo ezivulekileyo, uluhlu lwephakheji, njl.
- Ukusebenzisa izixhobo ezifana ILogcat okanye abahleli bokubhaliweyo abakwizinga eliphezulu unokukhangela amagama angundoqo anje ngo "crash", "ngaphandle", "ANR", okanye igama lepakethe ye-app eyingxaki.
- Ukuchonga oonobangela beempazamo ze-ANR (iSicelo esingaPhendulayo), khangela “am_anr” amangeno kushicilelo lwesiganeko, okanye amangeniso “ANR ngaphakathi” kwinkqubo yelogcat.
- Ukuba unemiba yenkumbulo okanye inkqubo yokuntlitheka, jonga amacandelo anxulumene ne-"am_low_memory" okanye i-RAM engaqhelekanga kunye nokusetyenziswa kwe-CPU.
Ezi ngxelo zinceda abaphuhlisi bavelise kwakhona kwaye balungise iziphene ngokubonelela umxholo ochanekileyo kwimeko-bume yenkqubo kunye nokuhamba kokuphunyezwa.
Iinkqubo zokuqokelela iimpazamo ezizenzekelayo: I-Crashlytics, i-Android Vitals, kunye nokunye
Ukongeza kwingxelo yesandla, kukho iinkqubo ezizenzekelayo ezakhelwe ngaphakathi ezifana ne-Firebase Crashlytics kunye ne-Android Vitals (kwi-Google Play Console).
- IiCrashlytics Iqokelela ngokuzenzekelayo iibugs kunye nemiba yokusebenza ngexesha lokwenyani, iimpazamo zamaqela ngobukhali, isixhobo, uguqulelo, njalo njalo. Ivumela abaphuhlisi ukuba babone ngqo apho ibug yenzeka khona kwikhowudi yabo kwaye yintoni impembelelo yayo kubasebenzisi.
- IiVitali ze-Android, efikelelekayo kwi-Play Console, ibeka embindini ungqubano kunye nedatha ye-ANR efunyenwe kwizixhobo zabasebenzisi abagunyazise ukuthunyelwa kweenkcukacha-manani, inceda ukuchonga iipateni kunye nokubeka phambili ukuba zeziphi iziphene ekufuneka zilungiswe kuqala.
Zombini i-Crashlytics kunye ne-Android Vitals zikuvumela ukuba ujonge umkhondo, ubone iimpazamo, kwaye ufumane ulwazi lomxholo malunga nesixhobo sakho, iinguqulelo, inkumbulo, kunye nokunye.
Ezinye izixhobo kunye neengcebiso zokulawula iingxelo ze-bug
- Ii-SDK ezikhethekileyo njengeDatadog, ekuvumela ukuba udibanise ingxelo yokuphahlazeka yesiko, ukulandelwa kwesiganeko, uhlalutyo lwendlela, kunye nokuqokelela impazamo kwi-Java / Kotlin kunye nekhowudi yendabuko (C / C ++ nge-NDK).
- Useto oluphambili: Unokwenza ngokwezifiso ukuba yeyiphi idatha eqokelelweyo, indlela egcinwa ngayo, kunye nendlela ethunyelwa ngayo ukuthobela imigaqo-nkqubo yabucala kunye nokulungelelanisa inani ledatha eqokelelweyo.
- Ezinye ii-SDKs zikuvumela ukuba unxulumanise iimpazamo ze-ANR nangaphambi kokuba imboniselo yomsebenzisi ibekho usebenzisa iindlela ezongezelelweyo kuqwalaselo.
Njengenyathelo lokuqala lokuqinisekisa ukhuseleko kunye nobumfihlo, kubalulekile ukuphonononga idatha ebandakanyiweyo phambi kokuthumela iNgxelo yeBug, njengoko uninzi lunolwazi olubuthathaka.