標籤:
今天運行模擬器程式裡訪問一個.app裡面的檔案,用NSHomeDirectory與檔案名稱拼接居然訪問不了,然後就發現一個奇怪的問題: iOS模擬器上NSHomeDirectory和resourcePath的根路徑居然是不同的。
上代碼:
NSLog(@"resourcePath is %@", [[NSBundle mainBundle]resourcePath]);NSLog(@"NSHomeDirectory is %@", NSHomeDirectory());
用的iPhone 6(8.0)模擬器
列印的結果:
2015-01-04 18:47:48.062 iOSTest[7595:277300] resourcePath is /Users/admin/Library/Developer/CoreSimulator/Devices/34D5C5D8-450E-461C-8C77-12067EFB2590/data/Containers/Bundle/Application/AF8C7753-AF0A-4A5C-A619-615DF2365529/iOSTest.app2015-01-04 18:47:48.064 iOSTest[7595:277300] NSHomeDirectory is /Users/admin/Library/Developer/CoreSimulator/Devices/34D5C5D8-450E-461C-8C77-12067EFB2590/data/Containers/Data/Application/F9083FEE-47D1-4B12-91F2-4A7493D34F41
去掉iOSTest.app,可以發現兩者的根路徑是不一樣的。
而在真機上,兩者的根路徑是一致的。
後記:發現在iPhone 5(7.1)模擬器上兩者的根路徑又是一樣的,應該是在iOS8裡做了修改吧。
iOS模擬器上NSHomeDirectory和resourcePath的根路徑不同