I'm working with images selected from the iOS Photos app using PHPickerViewController.
Some images appear as HEIF in the Photos info panel — which I understand are stored in the HEIC format, i.e., HEIF containers with HEVC-compressed images, commonly used on iOS when "High Efficiency" is enabled.
To convert these images to JPEG, I'm using the standard UIKit approach:
if let image = UIImage(data: heicData) {
let jpegData = image.jpegData(compressionQuality: 1.0)
}
However, I’ve noticed that this conversion often increases the image size significantly:
Original HEIC/HEIF: ~3 MB
Converted JPEG (quality: 1.0): ~8–12 MB
There’s no resolution change or image editing — it’s just a direct conversion. I understand that HEIC is more efficient than JPEG, but the increase in file size feels disproportionate. Is this kind of jump expected, or are there any recommended workarounds to avoid it?
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
https://developer.apple.com/documentation/metrickit
I am unable to get the MetricKit logs for past 24 hours time period on my test flight build. I have been able to achieve immediate logs for crash, cpu exception and diskwrite exceptions. But the logs which contains all the crashes, cpu exceptions and diskwrite exceptions, battery and network details, etc for the previous day/24h are never generated. I have used the following method to log the payloads in the file systems. I have tested the same on normal xcode builds as well as TestFlight build.
func didReceive(_ payloads: [MXDiagnosticPayload])
https://developer.apple.com/documentation/metrickit/mxmetricmanagersubscriber/didreceive(_:)-9yd4u