在我的iPhone應用程序,我保留通過這個代碼與事件相關的圖片:保存的照片不更新後的設備出現
[pngData writeToFile:filePath atomically:YES]; //Write the file
self.thisTransaction.picPath = filePath;
後來,我檢索和顯示與此代碼的照片:
UIImage * image = [UIImage imageWithContentsOfFile:thisTransaction.picPath];
在我的iPad上工作得很好(我沒有iPhone)。
但是,如果更新應用程序後,通過連接iPad到我的MB Pro後,Xcode代碼修改不涉及上述行,然後斷開連接並獨立運行,預計picPath
圖片不會被檢索。核心數據中與thisTransaction
相關的所有其他數據完好無損,但未更改,但更新後設備上未顯示預期圖片。
有人可以告訴我我要去哪裏嗎?
編輯澄清文件路徑建設
pngData = UIImagePNGRepresentation(capturedImage.scaledImage);
NSLog(@"1 The size of pngData should be %lu",(unsigned long)pngData.length);
//Save the image someplace, and add the path to this transaction's picPath attribute
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsPath = [paths objectAtIndex:0]; //Get the docs directory
int timestamp = [[NSDate date] timeIntervalSince1970];
NSString *timeTag = [NSString stringWithFormat:@"%d",timestamp];
filePath = [documentsPath stringByAppendingPathComponent:timeTag]; //Add the file name
NSLog(@"1 The picture was saved at %@",filePath);
控制檯日誌顯示該文件路徑:
/用戶/ YoursTruly /庫/開發商/ CoreSimulator /設備/ 65FB33E1-03A7-430D-894D -0C1893E03120/data/Containers/Data/Application/EB9B9523-003E-4613-8C34-4E91B3357F5A/Documents/1433624434
顯示你的代碼的價值'filePath'。最有可能的是你堅持圖片的完整路徑而不是相對路徑。切勿存儲絕對路徑,因爲該路徑可能隨時間而改變。每次只存儲相對路徑並在運行時重新計算絕對路徑。 – rmaddy
請參閱上面的編輯filePath構造。 – rattletrap99
您的日誌輸出似乎被截斷。應用程序之後應該有更多。但是,你想在「文件」之後堅持只是部分。然後,每次需要獲取「文檔」文件夾的路徑並追加您應該保存的部分。 – rmaddy