最近一個(gè)朋友在使用我們app時(shí)發(fā)現(xiàn)囊扳,更換個(gè)人頭像的地方烁挟,拍照之后使用照片app直接閃退婴洼。自己試了一下發(fā)現(xiàn)確實(shí)有這個(gè)問題。
調(diào)試
Xcode連接真機(jī)撼嗓,打上全局?jǐn)帱c(diǎn)進(jìn)行調(diào)試柬采,直接得到錯(cuò)誤信息如下圖:
信息提示需要在Info.plist文件中添加NSPhotoLibraryAddUsageDescription的key及其描述信息
解決
在Info.plist文件中添加NSPhotoLibraryAddUsageDescription的描述即可原因查找
雖然問題解決了,還是不明白怎么突然就引起閃退了且警。通過查找官方文檔粉捻,終于找到了原因所在
主要意思是這個(gè)key是iOS11新增的,當(dāng)你向相冊(cè)寫信息斑芜,需要描述原因肩刃。而需要添加這個(gè)key的原因是,在項(xiàng)目中我拍照獲取到圖片之后寫了如下代碼
if (picker.sourceType == UIImagePickerControllerSourceTypeCamera) {
//save to album
UIImageWriteToSavedPhotosAlbum(image, nil, nil, nil);
}
如果是相機(jī)類型時(shí),把圖片保存在了相冊(cè)盈包。
如果注釋掉這段代碼沸呐,使用圖片時(shí)不保存到相冊(cè),即使不在plist文件中配置NSPhotoLibraryAddUsageDescription也不會(huì)有問題呢燥。