2013-08-06 3 views
2

다음과 같이 반전 할 수 있습니다. 그러나 앱 번들로 복사 할 수 없습니다.앱 샌드 박스에서 앱 번들로 파일을 복사 할 수 있습니까?

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *documentsPath = [paths objectAtIndex:0]; 

// Destination path 
    NSString *fileInDocumentsPath = [documentsPath stringByAppendingPathComponent:@"Passwords File.txt"]; 
// Origin path - used when file is in bundle 
    NSString *fileInBundlePath = [[NSBundle mainBundle] pathForResource:@"Passwords File" ofType:@"txt"]; 

// File manager for copying File in Bundle to Sandbox 
    NSError *error = nil; 
    NSFileManager *fileManager = [NSFileManager defaultManager]; 
    [fileManager copyItemAtPath:fileInBundlePath toPath:fileInDocumentsPath error:&error]; 
+0

번들 디렉토리에 쓰는 것이 허용되지 않습니다. 샌드 박스의 일부가 아닙니다. – Steveo

+0

응용 프로그램 번들에 서명하고 파일을 추가합니다. 서명을 묻습니다. – AlexWien

+0

번들 디렉토리는 응용 프로그램에 대해 읽기 전용입니다. –

답변

6

응용 프로그램 번들은 읽기 전용입니다. 앱을 배포 한 후에는 수정할 수 없습니다.

앱이 File Sharing을 지원하는 경우 iTunes를 통해 앱의 문서 폴더에있는 파일에 액세스 할 수 있습니다. How to enable File Sharing for my app을 확인하십시오.

+0

그건 의미가 있습니다. 내가 성취하려는 것은 내 Mac에 복사 된 파일의 백업을 얻는 것입니다. 이것을 할 수있는 방법이 있습니까? –

+0

@RonaldBledsoe, 앱이 [파일 공유] (http://support.apple.com/kb/HT4094)를 지원하는 경우 iTunes를 통해 앱의 문서 폴더에있는 파일에 액세스 할 수 있습니다. [내 앱에 파일 공유를 사용하는 방법] (http://stackoverflow.com/questions/6029916/how-to-enable-file-sharing-for-my-app)을 확인하십시오. –