2010-01-20 1 views
1

xcodebuild (주로 프로젝트 디렉토리)를 실행할 때 현재 디렉토리 경로를 얻는 방법을 아는 사람이 있습니까? 일부 단위 테스트의 결과를 obj-c 코드의 디스크에 저장하려고 시도하지만 가능하면 응용 프로그램의 문서 경로에 덤프하지는 않을 것입니다. 문서 경로에 '../../ ..'등을 추가 할 수도 있지만 좀 더 세련된 방법이 필요할 것으로 기대하고있었습니다.xcodebuild를 명령 줄에서 실행할 때 iPhone SDK의 현재 디렉토리에 어떻게 쓸 수 있습니까?

* 이것은 시뮬레이터와 만 관련이 있지만 ... 시뮬레이터도 iPhone 파일 시스템 샌드 박스를 유지하려고합니까? Mac에서 다른 임의의 위치에 행운을 빕니다. 그래서 그럴 수도 있습니다.

입력 해 주셔서 감사합니다.

답변

0

나는 이것을 알아 냈습니다. 그 대답은 당황스럽게 간단합니다. "창피함"에 중점을 둔다.

NSString의 writeToFile 메소드와 같은 것을 사용하는 경우 xcodebuild를 실행하는 곳의 상대 경로로 경로를 생각하면됩니다. NSSearchPathForDirectoriesInDomains가 필요하지 않습니다.

예 :

(~/SRC/awesomeapp에서 실행되는 경우)

[myString writeToFile:@"awesome.file" atomically:YES encoding:NSUTF8StringEncoding error:&error]; 

윌 출력 : ~/SRC/awesomeapp/awesome.file

그래, 내가 백치. 실제로이 먼저 시도한 시도했지만 존재하지 않는 상대 디렉터리에 쓸려고했는데 도움이되지 않는 "이 할 수 없다"스타일 오류가 발생했습니다 internets 주위에 모든 결국 나를 stackoverflow ... (FileManager # createDirectoryAtPath를 사용할 필요가 있습니다! 불행히도 자동 경로 생성이 필요 없습니다.) xcodebuild를 통해 실행할 때 하드 드라이브에 원하는 파일을 자유롭게 쓸 수 있습니다 (sandboxing 없음). 발생합니다. 하지만 시뮬레이터에서 실행하면 다른 이야기 일 수 있습니다.