Ios-anteil für Crash Von hand
Crash protokollformat
Diese rechnung geht nicht nur an das vollständige system. Es enthält vor allem abmerkarten, die ursache und die rücktaste. Für sd.v3,5 enthält das folgende protokoll:
Nun erreicht der einsatz der app einen kriminalismus, der sich als einvernehmen bietet: ** dann werden sich die wege bald nicht mehr so schnell fortsetzen. Echt: *** weil das, was für die sprache vorgesehen ist, nach der jury für die sprache kommt: index 3 beyond bounds [t.1]. ( 0 CoreFoundation 0x0000000186ebe5b8 + 160 1 libobjc.A.dylib 0x00000001975c40e4 objc_exception_throw + 60 2 CoreFoundation 0x0000000186da362c + 0 3 BaiduStatApp 0x000000010009e824 BaiduStatApp + 288804 4 BaiduStatApp 0x00000001000aca04 BaiduStatApp + 346628 5 BaiduStatApp 0x00000001000a56e8 BaiduStatApp + 317160 6 BaiduStatApp 0x00000001000bf754 BaiduStatApp + 423764 7 Foundation 0x0000000187d91d90 + 372 8 CoreFoundation 0x0000000186e769ec + 24 9 CoreFoundation 0x0000000186e75c90 + 264 10 CoreFoundation 0x0000000186e73d40 + 712 11 CoreFoundation 0x0000000186da10a4 CFRunLoopRunSpecific + 396 12 GraphicsServices 0x000000018ff435a4 GSEventRunModal + 168 13 UIKit 0x000000018b6d2aa4 UIApplicationMain + 1488 14 BaiduStatApp 0x000000010007f318 BaiduStatApp + 160536 15 libdyld.dylib 0x0000000197c32a08 + 4 )
Sd.v3,50 und ab sd.k. das protokollformat wird mit entsprechenden informationen in den kopf hinzugefügt. Dies folgt:
UUID: 538572BD-D973-3D55-A475-4579BA0BECBF
NAME: BaiduMobStatSample
ARCH: x86_64
ADDR: 0x100000000
Handbuch für die analyse
- Weil das protokollformat nicht das vollständige iOS crash protokoll ist, lässt sich die einbindung eines gesamt-logs nicht mit dem Xcode 2 licatecras-werkzeug vornehmen. Hier haben wir den systembefehl für zeilen einlesen
- Dies wird nicht in der für die instrumentalisierung einer systembibliothek (zum beispiel die Foundation, uikik usw.) erforderlichen bewertung der codeposition innerhalb der Von dem entwickler selbst definierten projekte (zum beispiel, im oberen siehe BaiduStatApp) und somit auch die wertvollsten informationen über die position der funktion für den entwickler enthalten.
Jede menge material.
Einen app app dafür. Wenn vorzulegen mit ist. Xcarchive, gewinne kann rechtsklick > zeigt., und durch zu XXX. Xcarchive/Products/Applications/XXX app finden.
Schritte zur analyse
Hier kann man den wert der addrs-kopffarbe für die entsprechende fehlbildung der load address bekommen
Für die nächsten versionen Von sd.v9,5, die einen tadel für Crash erhalten, gibt die app load -adresse folgendermaßen weiter
3 BaiduStatApp 0x000000010009e824 BaiduStatApp + 288804
Der erste minus minus die letzte zeile in dieser zeile, verstanden
0x0000000000909:824-2800004 = 0x00000100058.000
Die endgültige anzahl lautet: appload dress
Die lokalen adressen des aktuellen modul mit befehl einlesen, zum beispiel
3 BaiduStatApp 0x000000010009e824 BaiduStatApp + 288804
In den informationen zu den aktuellen modul finden sie die adresse des derzeitigen modul nur. Leiten sie die einsatzadresse der load address mit der angegebenen adresse ein.
xcrun atos --arch arm64 -o xxx.app/xxx -l 0x0000000100058000 0x000000010009e824
Für die analyse folgende ergebnisse:
-[BaiduViewController viewDidLoad:] (in BaiduStatApp) (BaiduViewController.m:272)
Ergebnisse enthalten den namen einer klasse, den zeta-namen, den dateinamen und die anzahl der passenden zeilen