公司APP做的支付是二維碼掃碼支付的方式,具體是保存生成的支付二維碼截圖到相冊 然后打開支付寶或者微信掃一掃點選保存的圖片 識別二維碼來進行支付。
原來正常寫的支付正常,最近有些用戶升級了11.0.3 之后發(fā)生了進入支付寶后無法找到保存的圖片,將自己的手機升級進行真機測試發(fā)現原來的將圖片寫入系統(tǒng)相冊的方法一直崩潰,只不過在跳轉支付寶在前所以用戶并不清楚是崩潰了!百度了很多網頁都不能解決該方法崩潰問題,沒辦法 只能更換寫入到系統(tǒng)相冊的方法。現在貼上之前的寫入相冊代碼和現在修改以后的代碼,望有大神看到可以給我說下為什么升級之后寫入方法崩潰的問題。
// 這個是之前寫的 獲取當前頁面截圖的代碼
UIGraphicsBeginImageContext(self.view.bounds.size); ? ??
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
//這個是之前寫的后來升級之后一直崩潰的寫入相冊的方法,不寫代理和寫代理的都試過一樣崩潰
UIImageWriteToSavedPhotosAlbum(viewImage, nil, nil, nil);//然后將該圖片保存到圖片圖
? ?UIImageWriteToSavedPhotosAlbum(viewImage, self, @selector(image:didFinishSavingWithError:contextInfo:)//這個寫了代理方法的我實現過,同樣崩潰
一下是我現在寫的用photolibrary 寫入相冊的方法
[[PHPhotoLibrary sharedPhotoLibrary] performChanges:^{
//1,保存圖片到系統(tǒng)相冊
[PHAssetChangeRequest creationRequestForAssetFromImage:viewImage];
} completionHandler:^(BOOL success, NSError * _Nullable error) {
if (!success) return ;
NSLog(@"保存成功");
}];
在新系統(tǒng)里也可以保存成功!
寫入相冊崩潰問題我現在都沒有搞清楚,在此記錄,希望以后會有更新這個文章的時候。