최신버전의 xcode 에서 iPod 2세대로 테스트를 하려고 하니 실행자체가 되지 않았다.

개발자 등록 및 기기등록은 정상적으로 완료 된 상황이다.

등록된 기기의 console 상에 다음과 같은 메세지가 나왔다.


<Notice>: Could not receive size of message

<Error>:2ffea000 handle_connection: Could not receive USB message #6 from Xcode. Killing connection


원인은 구버전은 armv6 인데 armv7 로 설정이 되어있기때문이다.

다음과 같이 해결하면 된다.


1. Targets - Build Settings - Architectures - Architectures 에 "armv6" 추가

2. <ProjectName>-Info.plist 파일 - Required device capabilities 에서 "armv7" 제거


'Mobile' 카테고리의 다른 글

Hex Color Picker  (0) 2012.07.05
[xcode] Symbolic breakpoints  (0) 2012.04.28
[git] git 로 소스 받기  (0) 2012.03.27
[Mac] 런치패드 (LaunchPad) 아이콘 삭제  (0) 2012.03.15
[MAC] USB 인식 불가  (0) 2012.02.17

[[NSBundle mainBundle] pathForResource:@"filename" ofType:@"ext"]


분명히 파일을 추가하여 트리에도 나오는데 경로가 계속 nil 이 된다.

확인 결과 파일을 추가할 때 옵션의 문제이다.

Add to targets 에 target 에 대한 체크가 빠져있었다.

추가된 파일을 제거하고 다시 등록하면서 target 설정을 해주니 잘 동작한다.


Result Code

Value

Description

kAudioFileUnspecifiedError

'wht?'

지정되지않은 오류 발생. iOS 2.0 이후.

kAudioFileUnsupportedFileTypeError

'typ?'

지원되지않는 파일 형식 입니다. iOS 2.0 이후.

kAudioFileUnsupportedDataFormatError

'fmt?'

이 파일 형식에서는 지원되지 않는 데이터 형식입니다. iOS 2.0 이후.

kAudioFileUnsupportedPropertyError

'pty?'

지원되지 않는 속성입니다. iOS 2.0 이후.

kAudioFileBadPropertySizeError

'!siz'

속성 데이터의 크기가 올바르지 않습니다. iOS 2.0 이후.

kAudioFilePermissionsError

'prm?'

파일사용권한 위반 작업. 예를 들어, kAudioFileReadPermission 상수를 이용하여 연 파일에 대한 쓰기 시도. iOS 2.0 이후.

kAudioFileNotOptimizedError

'optm'

오디오 데이터 청크 뒤에 오는 청크가 오디어 데이터 청크의 확장을 방해하고 있습니다. 더 많은 데이터를 쓰기 위해, 파일을 최적화해야 합니다. iOS 2.0 이후.

kAudioFileInvalidChunkError

'chk?'

청크가 파일에 존재하지 않거나, 파일에 의해 지원되지 않습니다. iOS 2.0 이후.

kAudioFileDoesNotAllow64BitDataSizeError

'off?'

파일 오프셋이 파일 형식에 비해 너무 큽니다. AIFF 와 WAVE 파일 형식은 32비트 파일 크기 제한이 있습니다. iOS 2.0 이후.

kAudioFileInvalidPacketOffsetError

'pck?'

A packet offset was past the end of the file, or not at the end of the file when a VBR format was written, or a corrupt packet size was read when the packet table was built. iOS 2.0 이후.

kAudioFileInvalidFileError

'dta?'

파일 형식이 잘못되었거나, 그 형식의 오디오 파일의 유효한 인스턴스가 아닙니다. iOS 2.0 이후.

kAudioFileOperationNotSupportedError

0x6F703F3F

작업을 수행할 수 없습니다. 예를 들어, 파일에서 오디오 데이터의 크기를 증가시키기 위해 kAudioFilePropertyAudioDataByteCount 상수를 설정하는 것은 지원되는 작업이 아닙니다. 대신 데이터를 씁니다. iOS 2.0 이후.

kAudioFileNotOpenError

-38

닫힌 파일. iOS 4.2 이후.

kAudioFileEndOfFileError

-39

파일의 마지막. iOS 4.0 이후.

kAudioFilePositionError

-40

잘못된 파일 위치. iOS 4.0 이후.

kAudioFileFileNotFoundError

-43

파일 없음. iOS 4.0 이후.


'Mobile > iOS' 카테고리의 다른 글

in-house 배포시 배포 URL  (0) 2012.05.24
[Simulator] 단축키  (0) 2012.05.02
UIImage 자르기  (0) 2012.03.20
[iOS] NSTimer 사용  (0) 2012.03.13
[iOS] NSMutableDictionary 상속, "method only defined for abstract class"  (0) 2012.03.02
다른 방법이 있어 추가한다.
Organizer - Projects 에서 해당 프로젝트를 제거한 후 xcode 에서 프로젝트를 다시 열면 된다.
다시 열 때 Organizer - Projects 에도 다시 등록된다.


코드를 수정하던 중, 또는 소스를 다시 받았을 경우 "Code highlight" (또는 "Code coloring") 이 동작하지 않는 경우가 있다.

하얀색 글자들을 바라보자니 정신이 혼미해진다.

해결방법은 Header 탐색 경로를 수정하면 된다.


1. Project - Build settings - Search Paths 로 이동

2. Header Search Paths 에 "$(SRCROOT)/**" 을 추가한다.

3. 잠시 대기


이렇게 해도 해결이 안되면 다음 원문의 3번 부터 따라해보자.

원문: http://stackoverflow.com/questions/2138047/xcode-code-loses-syntax-coloring

Audio 재생 관련 검색을 하던 중 Matt Gallagher 의 AudioStreamer 를 받게되었다.

git read-only 주소가 공개되어있어 git 로 받기로 했다.

받으려는 폴더로 이동하여 다음과 같이 입력하면 된다.

$ git clone [git 주소]


UIImage 의 일부 영역을 CGImage 로 변환 후 UIImage 로 변환


CGImageRef imageRef = CGImageCreateWithImageInRect([image CGImage], CGRectMake(0, 0, iWidth, iHeight));
UIImage *image = [[UIImage imageWithCGImage:imageRef] autorelease];
CGImageRelease(imageRef); 
 

일반적으로 아이폰이나 아이패드처럼 아이콘을 길게 누르고 있으면 삭제버튼이 생긴다.
이중 삭제가 되지않는 것들을 삭제하는 방법이다.
아이콘 목록이 sqlite 로 관리되므로 DB 에서 삭제하면 된다.

다음을 터미널 창에서 실행한다.

1. sqlite 실행
  $ sqlite3 ~/Library/Application\ Support/Dock/*.db

2. 아이콘 목록 확인
  sqlite> select * from apps;

3. 원하는 title 의 아이콘 삭제
  sqlite> delete from apps where title='title'

4. sqlite 종료
  sqlite> .exit

5. LaunchPad 재실행
  $ killall Dock
 


1. 특정주기로 발생하는 타이머 (즉시 동작)
[NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(onTick) userInfo:nil repeats:YES];

호출 후 부터 1초마다 self 의 onTick 을 인자값 없이 반복 호출

2. 특정주기로 발생하는 타이머 (시작시간 조절)
[[NSRunLoop currentREunLoop] addTimer:[[[NSTimer alloc] initWithFireDate:[NSDate dateWithTimeIntervalSinceNow:0.0] interval:9.0 target:self selector:@selector(onTick) userInfo:nil repeats:YES] autorelease] forMode:NSDefaultRunLoopMode];

1번과 유사한 동작이지만 initWithFireDate 에 명시한 시간부터 onTick 이 호출된다.
여기서는 dateWithTimeIntervalSinceNow:0.0 으로 즉시 onTick 이 호출되고, 이후 1초마다 호출된다. 
Apple Mach-O Linker (id) Error
Command /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/clang failed with exit code 1


사례1. 헤더에서 변수를 생성하고, 이 헤더를 두군데 이상에서 포함시켰을 경우.

NSStringEncoding defaultEncoding = NSUTF8StringEncoding;

.m 파일에 있던 이 코드를 수정하던 도중 .h 에 옮기는 실수를 하였다.
C/C++ 의 경우라면 아무 문제없이 컴파일이 되지만 서로 다른 변수가 생겨 오동작이 되었을 경우다.
그러나 xcode 에서는 clang 에서 오류를 발생시킨다.

해당 코드는 .m 작성하고 .h 파일에
NSStringEncoding defaultEncoding;
을 넣어 참조하도록 하자.
NSMutableDicrionary 를 상속받아서 사용시에 몇가지 abstract method 를 구현해주어야 한다. 그렇지 않고 사용시 "method only defined for abstract class" 라는 디버깅 메세지를 만날 것이다.

다음은 override 해야할 method 들이다.

1. NSMutableDicrionary
 
2. NSDicrionary

클래스 레퍼런스를 링크하였으니 각 클래스 레퍼런스의 "Overview" 에 "Subclassing notes" 를 참고하면 된다. 이외의 다른 클래스들은 애플 개발자 사이트 (https://developer.apple.com/) 를 참고.

--------

추가. (2012/06/14) Class Cluster 에 대한 이해가 필요한 것이다.



'Mobile > iOS' 카테고리의 다른 글

UIImage 자르기  (0) 2012.03.20
[iOS] NSTimer 사용  (0) 2012.03.13
[Simul] 시뮬레이터에서 멀티터치 테스트  (0) 2012.02.28
[iOS] CoreData 추가하기  (0) 2012.02.24
[iOS] CFOptionFlags  (0) 2012.02.21

+ Recent posts