公司APP做的支付是二维码扫码支付的方式,具体是保存生成的支付二维码截图到相册 然后打开支付宝或者微信扫一扫点选保存的图片 识别二维码来进行支付。
原来正常写的支付正常,最近有些用户升级了11.0.3 之后发生了进入支付宝后无法找到保存的图片,将自己的手机升级进行真机测试发现原来的将图片写入系统相册的方法一直崩溃,只不过在跳转支付宝在前所以用户并不清楚是崩溃了!百度了很多网页都不能解决该方法崩溃问题,没办法 只能更换写入到系统相册的方法。现在贴上之前的写入相册代码和现在修改以后的代码,望有大神看到可以给我说下为什么升级之后写入方法崩溃的问题。
// 这个是之前写的 获取当前页面截图的代码
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,保存图片到系统相册
[PHAssetChangeRequest creationRequestForAssetFromImage:viewImage];
} completionHandler:^(BOOL success, NSError * _Nullable error) {
if (!success) return ;
NSLog(@"保存成功");
}];
在新系统里也可以保存成功!
写入相册崩溃问题我现在都没有搞清楚,在此记录,希望以后会有更新这个文章的时候。
网友评论