Thread 0 name:  Dispatch queue: com.apple.main-thread
Thread 0 Crashed:


0   libsystem_kernel.dylib           0x000000018b126014 0x18b107000 + 126996
1   libsystem_pthread.dylib          0x000000018b1ee450 0x18b1e9000 + 21584
2   libsystem_c.dylib                0x000000018b09a3e0 0x18b037000 + 406496
3   libc++abi.dylib                  0x000000018ab652d4 0x18ab64000 + 4820
4   libc++abi.dylib                  0x000000018ab82cc0 0x18ab64000 + 126144
5   libobjc.A.dylib                  0x000000018ab90844 0x18ab88000 + 34884
6   libc++abi.dylib                  0x000000018ab7f66c 0x18ab64000 + 112236
7   libc++abi.dylib                  0x000000018ab7ef84 0x18ab64000 + 110468
8   libobjc.A.dylib                  0x000000018ab90690 0x18ab88000 + 34448
9   CoreFoundation                   0x000000018c147428 0x18c027000 + 1180712

10  AppName                          0x00000001004dd3b8 0x100074000 + 4625336



1. 앱을 배포했을 때에 만들어둔 Archived 파일을 연다.
2. AppName.app과 AppName.app.dSYM 파일을 임의의 폴더에 복사
3. 로그 파일에 AppName 옆의 주소들을 아래와 같이 입력하면 어떤 Method에서 죽는지 확인할 수 있음.


atos -arch arm64 -o AppName.app/AppName -l 0x100074000 0x00000001004dd3b8




* arch: armv7, armv7s, arm64

Architecture에 대한 정보는 다음 주소를 참고

http://kyejusung.com/2015/10/armv7s-armv7-arm64%EC%9D%98-%EC%B0%A8%EC%9D%B4%EC%A0%90/



저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by 고독한 프로그래머

댓글을 달아 주세요

iOS 10에서 사진 라이브러리에 사진을 저장하려고 하면 오류가 발생하는 경우 info.plist에 관련 키 값을 추가해줘야 합니다.


info.plist

 <key>NSPhotoLibraryUsageDescription</key>
<string>$(PRODUCT_NAME) uses photos</string>




* 출처: http://stackoverflow.com/a/38241350


저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by 고독한 프로그래머

댓글을 달아 주세요



UCC 다바다를 찾아오신 분은 '여기'로 가주세요.


아이폰 프로그래밍을 하다 보면 버전 정보를 가져와야 할 필요가 있는 경우가 있지요. 

아주 간단하게 현재 실행중인 IOS 버전을 가져오는 방법입니다.

NSString* systemVersion = [[UIDevice currentDevice] systemVersion];

NSLog(@"system version = %@", systemVersion); 


위 코드는 현재 디바이스의 IOS 버전 정보를 NSString* 형태로 리턴해줍니다. 
예) 4.3.2 

대부분의 경우 버전 2번째 자리까지 사용하는 경우가 많으니까 실수형태로 가져와서 버전 비교하는게 쉽습니다.

    float fVersion = [systemVersion floatValue];

    if(fVersion < 4.0)

    {

        // 4.0 이전 버전인 경우.

    }

    else if(fVersion <= 4.2)

    {

        // 4.0 ~ 4.2 버전인 경우.

    } 



세부 버전 정보까지 관리하려면 문자열을 배열로 만들어서 비교해도 됩니다.

    NSArray* arrVersions = [systemVersion componentsSeparatedByString:@"."];


    if([arrVersions count] == 3)

    {

        NSLog(@"%@, %@, %@", [arrVersions objectAtIndex:0], [arrVersions objectAtIndex:1], [arrVersions objectAtIndex:2]);

    }




※ 퍼가실땐 출처를 밝혀주세요. (http://shkam.tistory.com/)





저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by 고독한 프로그래머

댓글을 달아 주세요


티스토리 툴바