2010-09-21 22 views
16

này của Apple lưu ý công nghệ:Bắt một ứng dụng của iOS "~/Library" con đường đáng tin cậy

http://developer.apple.com/library/ios/#qa/qa2010/qa1699.html

đề nghị lưu trữ tài liệu người sử dụng "nội bộ" trong thư mục con tắt của ~/Library. Nhưng tôi không thể tìm thấy một trong các tên miền tìm kiếm được tạo trước sẽ giúp tôi có được điều này. Điều gì là tốt nhất/chính xác nhất/ít có khả năng phá vỡ cách xây dựng con đường này?

Cảm ơn.

Trả lời

40

Cách đúng là

NSString* path; 
path = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES)[0]; 

Tuy nhiên, [@"~/Library" stringByExpandingTildeInPath] cũng làm việc.


Swift 3:

let path = NSSearchPathForDirectoriesInDomains(.libraryDirectory, .userDomainMask, true)[0] 
+0

NSlibraryDirectory được ghi chép lại để trỏ đến thư mục gốc/Thư viện, không phải là phiên bản người dùng. Chúng có tương đương ngữ nghĩa trong trường hợp này không? –

+1

Tôi đã xác nhận rằng 'NSLibraryDirectory' được kết hợp với' NSUserDomainMask' làm điều đúng ở đây. Cảm ơn Kenny. –

5

Bạn cũng có thể thử điều này:

[NSHomeDirectory() stringByAppendingString:@"/Library"]