충돌 보고서 :이 충돌을 이해하는 방법?
0 ??? 0x0 + 0
1 TestPrj -[AppListReader addInstalledApps:] (AppListReader.m:186) + 77516
2 TestPrj -[AppListReader getAppsInstalled] (AppListReader.m:161) + 77320
3 TestPrj -[DetectAppsInstalledService activate:] (DetectAppsInstalledService.m:48) + 197612
4 TestPrj -[BusinessManager handleBG] (BusinessManager.m:762) + 116672
5 TestPrj -[BusinessManager activate:] (BusinessManager.m:208) + 106236
6 TestPrj -[AppDelegate launchViewController:] (AppDelegate.m:338) + 32564
7 TestPrj -[AppDelegate application:didFinishLaunchingWithOptions:] (AppDelegate.m:153) + 27396
8 UIKit <redacted> + 316
9 UIKit <redacted> + 1564
10 UIKit <redacted> + 772
11 UIKit <redacted> + 3316
12 UIKit <redacted> + 104
13 UIKit <redacted> + 672
14 GraphicsServices <redacted> + 676
15 GraphicsServices <redacted> + 48
16 CoreFoundation <redacted> + 56
17 CoreFoundation <redacted> + 444
18 CoreFoundation <redacted> + 1620
19 CoreFoundation CFRunLoopRunSpecific + 452
20 UIKit <redacted> + 784
21 UIKit UIApplicationMain + 1156
22 TestPrj main (main.m:21) + 23548
23 libdyld.dylib <redacted> + 4
라인 (186)은 다음과 같습니다
NSMutableArray *allObjetcsArr = [self getInstalled];
이 구현 : 충돌이 BugSense를 통해 수신되는
-(NSMutableArray *)getInstalled
{
NSDictionary *options = [NSDictionary dictionaryWithObjectsAndKeys:@"ApplicationType",@"Any", [self defaultReturnAttributes] ,@"ReturnAttributes",nil];
MobileInstallationLookup = dlsym(RTLD_DEFAULT, "MobileInstallationLookup");
NSDictionary *apps = (__bridge NSDictionary *)((__bridge void*)MobileInstallationLookup(options));
NSMutableArray *allObjetcsArr = [[NSMutableArray alloc]initWithArray:[apps allValues]];
return allObjetcsArr;
}
와 나는 그것을 재현 할 수 없습니다입니다. 나는 MobileInstallationLookup 프레임 워크 (private api)와 관련이 있다고 생각하지만 확신 할 수 없다.
-(NSMutableArray *)getInstalled
는 스택 추적에 존재하지 않는 이유는 나를 위해 분명하지 않다
, 만 ??? 이 0x0 + 내 돈이 라인에 0
그냥 콜 스택입니다 (충돌이 발생한 위치를 보여줍니다). 실제 충돌은 보고서에서 위에 있었을 것입니다. – jrturton
예외 중단 점을 추가하여 충돌을 일으키는 행을 찾으십시오. 이런 호출 스택에 의존하지 마십시오. – Fogmeister
약간의 인터넷 검색 결과,'MobileInstallationLookup'은 사적인 Apple API'MobileInstallation'의 일부라는 것을 알게되었습니다. 그래서 나는 그것이 거부 될까봐 당신이 애플 앱 스토어에 이것을 제출하는 것에 대해 생각하지 않기를 바랍니다. – Popeye