Search results for

“offloading”

183 results found

Post

Replies

Boosts

Views

Activity

Reply to Looking for opinions….
Moving the files to the iCloud folder will still occupy space on your hard drive unless they are automatically offload when not in use. I would recommend to read this documentation how to manage storage in iCloud :https://support.apple.com/en-us/108922 Albert Pascual
  Worldwide Developer Relations.
Dec ’24
Reply to How to tell when Metal is "done" with an id<MTLTexture>, so we can release it properly.
Hi, Could you elaborate on When overloaded, stale metal render passes need to be 'aborted', which results in metal callbacks not being called.? This approach seems like dynamic load balancing to maximize throughput. It's unclear how well this could work with current Metal API and seems unlikely to be successful with OS watchdogs. Instead we recommend reducing and optimizing workload. Guidance on that can be found in Improving your game’s graphics performance and settings (even though your app may not be a game). You may also want to consider offloading some rendering work to compute to improve efficiency. See Compute Passes.
Dec ’24
DELETED APP PERMANENTLY OFF HOME SCREEN AND CANNOT GET IT BACK- I’VE TRIED EVERYTHING!!
I deleted an app off of my screen and from my app library and cannot get it back. I also added face ID only to get in. The only way that I can get to the app is from the app store by searching it up and pressing open. I cannot search it on the home screen or app library. I’ve been on settings>general>iPhone storage>hidden apps to delete it but it takes just displays the loading circle and doesn’t do a thing. I’ve offloaded the app and redownloaded it and it still won’t appear. It’s a massive pain to have to go onto the app store and search it up every time i need to open it (which is around 20 times a day 😭) and I would really appreciate a solution. Believe me- I have tried EVERYTHING!
1
0
302
Nov ’24
Reply to RunLoop behaviour change with performBlock?
Can you clarify the circumstances in which mach ports are leaked? Well, the unhelpful (and slightly flippant) answer is basically anytime they're not properly deallocated when they're no longer useful. More practically, the whole reason mach ports create issues IS that it's often quite difficult to connect any given mach port with the specific component responsible for managing that unit. In terms of run loop semantics specifically, I think you'd (potentially) generate a leak anytime you destroy an thread without removing/stopping all of it's input sources*. *Strictly speaking, that isn't necessarily a guaranteed leak. For example, some of our frameworks register thread destruction handlers so to handle clean up. However, at that point you're relying on the details of our own implementation, which is never ideal. Also, keep in mind that this isn't just about mach port leakage, but could involve any other resource who's management happened to be tied to that thread. The while loop in the original post is in a
Topic: App & System Services SubTopic: General Tags:
Nov ’24
iOS18.2 Beta
I updated my device today with the new update iOS18.2. There were a couple of issues: The App Store won't load. I am unable to update or install applications and offloaded applications. Network issues (wifi) won't work. Unable to connect to a wifi access point.
0
0
240
Nov ’24
Is it possible to retrieve EXIF metadata from PHAsset without downloading photos (even if offloaded to iCloud Photo Library)?
iOS (Official) Photos app can display some EXIF-related metadata (e.g. camera and lens info, ISO, shutter speed, F-number) even when photos are offloaded to iCloud and the device is not connected to internet (e.g. airplane mode). However, with the Photos.framework, we need to download photos to retrive those metadata (which means it will not work with airplane mode). I tried the following methods, but none of those worked when photos were offloaded to iCloud and the device was in airplane mode: Requesting data with PHImageManager.default().requestImageDataAndOrientation Result: It does not return Data if the photo is not stored locally on the device, even with options.deliveryMode = .fastFormat Converting PHAsset#localIdentifier to an AssetsLibrary.framework URL (assets-library://asset/...) (I am aware that AssetsLibrary.framework is deprecated, but this was just a test.) Result: If PHImageManager does not returns Data, ALAsset#defaultRepresentation().metadata() returns an empty NSDictionary
0
0
644
Nov ’24
iOS App Store keeps installing TestFlight version of app instead of App Store version
I'm having an issue with an app installation on my iPhone where it keeps installing the latest TestFlight version instead of the public App Store version. Here are the details: I initially installed version 1.24 of the app via TestFlight. I then uninstalled both the app and TestFlight and tried to reinstall the app from the App Store, which should be version 1.6 (the current public release). Despite this, the App Store keeps installing version 1.24, which is the TestFlight version. Here’s what I’ve tried so far: Uninstalled both the app and TestFlight. Restarted the iPhone to clear any cached data. Tried offloading and reinstalling the App Store app through Settings to clear its cache. Reinstalled only the App Store version, but the device still downloads the TestFlight release. Has anyone experienced this before? Are there additional steps I can take to reset the association to the App Store version? Any insights would be greatly appreciated. Thank you!
1
0
672
Oct ’24
Reply to macOS System Extension Compatibility Issues
Has anyone found ways to improve compatibility with other system extensions? That is a really, really hard problem which doesn't really have any easy answer. The first thing to understand here is what the problem actually is. Architecturally, an ES client has two primary concerns to deal with: Process individual events quickly. Minimize activities that generate additional events. In the basic case, the second concern is easy to overlook. It's easy enough for a client to mute its own helper processes (direct workers) and the work being done by other processes like Apple's daemons are (typically) relatively small. As long as the client has certain amount of parallelism, number two can often be relatively hidden. That breaks down once you hit this scenario: Some users are experiencing performance problems when running our extension alongside other system extensions At that point, what you basically have is a pipeline of ES clients which are both generating AND approving auth events for each other. Performance pr
Topic: App & System Services SubTopic: Core OS Tags:
Oct ’24
Manually offload apps
Hello, I use to be able to manually offload apps to clean up my storage space and ever since I uploaded the iOS 18 developer beta to the latest, I can’t see to find an option for it. Any help would be appreciated!
1
0
279
Oct ’24
Reply to iPhone and iPad accelerometer specifications
Hi all, I'm looking for the specifications for the accelerometers used in current iPhone and iPad devices, including the sensitivity and the update rates possible. We've never published any formal documentation about what the exact capabilities of the hardware were. However, I have a word of caution around this: Despite the documentation saying it's 100Hz, I've not yet found it to be better than 50Hz on any of iPhone SE, 8 or 11, nor iPad mini or Pros. Having worked with many developers using CoreMotion, I've seen the same pattern happen MANY times: A basic motion analysis engine is implemented, typically using the real time API and the with a target queue. The main thread or other busy thread are entangled with that algorithm, either because the code is running directly on that thread or because of implicit relationships which aren't as visible. Testing begins and the results are somewhat positive, however, there are issues with random data glitches or other oddities in the data. The assumption is made that
Topic: App & System Services SubTopic: Core OS Tags:
Sep ’24
Reply to handling files offloaded to iCloud?
Thanks Ziqiao, I'm not talking about the Remove Downloaded feature, but it's definitely something very similar. In the problem scenario, the files are stored in ~/Documents/x and if the users' hard drives get too full, macOS is moving those documents to iCloud automatically, thereby triggering the FileWatcher* to say they've been removed. I believe that behind-the-scenes Optimise Mac Storage almost certainly uses the same mechanism as the Remove Downloaded feature you mentioned (ie 'dataless files) which I'd never heard of till now. Your tech note link gave me some good keywords for further research. If it's true I'm dealing with a dataless file issue, when FileWatcher says a file was deleted can I simply ask fileExists(atPath:) to see if it's actually still there or not? I think a dataless file will still return true for a fileExists call, despite being offloaded? * FileWatcher is just using FSEvents, I believe. Pertinent code is here.
Topic: App & System Services SubTopic: Core OS Tags:
Sep ’24
handling files offloaded to iCloud?
My app saves its document files by default into ~/Documents. It does some important domain-specific stuff when a document is deleted. I monitor for deletion using https://github.com/eonist/FileWatcher Unfortunately several users have noticed my app doing this cleanup work even when they have not deleted the corresponding document. We've traced it through and realised it's the iCloud Optimise Mac Storage feature, or Store in iCloud > Desktop and Documents. I'm not sure which because I don't use these features of macOS at all, and also they seem to have been renamed or changed in Sonoma. Either way, I'm wondering: a) how I can tell in Swift whether a file has actually been deleted, or whether it's been offloaded to iCloud by macOS. b) how can I test this? My research is pointing at urlubiquitousitemdownloadingstatus but it's hard to play with it without knowing how to test it.
2
0
841
Sep ’24
Reply to Does temporary removing apps to update ios changes identifierForVendor?
Despite the possible implication with this message, this action does not actually remove the apps and reinstall them. The apps are actually only offloaded, which will free up storage used by the app but keep its existence on the device. This will not result in things like identifierForVendor, push tokens, etc. changing, any app data like documents, and app settings being lost. Argun Tekant /  DTS Engineer / Core Technologies
Topic: UI Frameworks SubTopic: UIKit Tags:
Sep ’24
Passpoint Network Performance Different using API vs .mobileconfig
Hi All, We are developing a hybrid MVNO and want to use Wi-Fi Passpoint to enable offload from our users phones when they are in range of our Wi-Fi network. The user experience of installing a .mobileconfig file is too many steps and a bad user experience which causes low adoption among our users. Instead, we want to use the NEHotspotConfigurationManager to configure a HS2.0 network using EAP-TLS. We configure these elements using NEHotspotConfiguration NEHotspotHS20Settings NEHotspotEAPSettings Our code to execute above is shown below: func configureProfile(certificate: String, issuingCa: String, caChain: [String], resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) { #if !targetEnvironment(simulator) let keychainQuery = [kSecClass as String: kSecClassCertificate] as [String: Any] as CFDictionary let status = SecItemDelete(keychainQuery) print(Delete status (status)) let url = Bundle.main.url(forResource: serverCA, withExtension: crt)! let caCert = try! String(content
1
0
556
Aug ’24
Performant alternative to scaling a CIImage / PixelBuffer
Hey, I’m building a camera app where I am applying real time effects to the view finder. One of those effects is a variable blur, so to improve performance I am scaling down the input image using CIFilter.lanczosScaleTransform(). This works fine and runs at 30FPS, but when running the metal profiler I can see that the scaling transforms use a lot of GPU time, almost as much as the variable blur. Is there a more efficient way to do this? The simplified chain is like this: Scale down viewFinder CVPixelBuffer (CIFilter.lanczosScaleTransform) Scale up depthMap CVPixelBuffer to match viewFinder size (CIFilter.lanczosScaleTransform) Create CIImages from both CVPixelBuffers Apply VariableDepthBlur (CIFilter.maskedVariableBlur) Scale up final image to metal view size (CIFilter.lanczosScaleTransform) Render CIImage to a MTKView using CIRenderDestination From some research, I wonder if scaling the CVPixelBuffer using the accelerate framework would be faster? Also, Instead of scaling the final image, perhaps I could offload
2
0
1.1k
Jul ’24
Reply to Looking for opinions….
Moving the files to the iCloud folder will still occupy space on your hard drive unless they are automatically offload when not in use. I would recommend to read this documentation how to manage storage in iCloud :https://support.apple.com/en-us/108922 Albert Pascual
  Worldwide Developer Relations.
Replies
Boosts
Views
Activity
Dec ’24
Reply to How to tell when Metal is "done" with an id<MTLTexture>, so we can release it properly.
Hi, Could you elaborate on When overloaded, stale metal render passes need to be 'aborted', which results in metal callbacks not being called.? This approach seems like dynamic load balancing to maximize throughput. It's unclear how well this could work with current Metal API and seems unlikely to be successful with OS watchdogs. Instead we recommend reducing and optimizing workload. Guidance on that can be found in Improving your game’s graphics performance and settings (even though your app may not be a game). You may also want to consider offloading some rendering work to compute to improve efficiency. See Compute Passes.
Replies
Boosts
Views
Activity
Dec ’24
DELETED APP PERMANENTLY OFF HOME SCREEN AND CANNOT GET IT BACK- I’VE TRIED EVERYTHING!!
I deleted an app off of my screen and from my app library and cannot get it back. I also added face ID only to get in. The only way that I can get to the app is from the app store by searching it up and pressing open. I cannot search it on the home screen or app library. I’ve been on settings>general>iPhone storage>hidden apps to delete it but it takes just displays the loading circle and doesn’t do a thing. I’ve offloaded the app and redownloaded it and it still won’t appear. It’s a massive pain to have to go onto the app store and search it up every time i need to open it (which is around 20 times a day 😭) and I would really appreciate a solution. Believe me- I have tried EVERYTHING!
Replies
1
Boosts
0
Views
302
Activity
Nov ’24
Reply to RunLoop behaviour change with performBlock?
Can you clarify the circumstances in which mach ports are leaked? Well, the unhelpful (and slightly flippant) answer is basically anytime they're not properly deallocated when they're no longer useful. More practically, the whole reason mach ports create issues IS that it's often quite difficult to connect any given mach port with the specific component responsible for managing that unit. In terms of run loop semantics specifically, I think you'd (potentially) generate a leak anytime you destroy an thread without removing/stopping all of it's input sources*. *Strictly speaking, that isn't necessarily a guaranteed leak. For example, some of our frameworks register thread destruction handlers so to handle clean up. However, at that point you're relying on the details of our own implementation, which is never ideal. Also, keep in mind that this isn't just about mach port leakage, but could involve any other resource who's management happened to be tied to that thread. The while loop in the original post is in a
Topic: App & System Services SubTopic: General Tags:
Replies
Boosts
Views
Activity
Nov ’24
iOS18.2 Beta
I updated my device today with the new update iOS18.2. There were a couple of issues: The App Store won't load. I am unable to update or install applications and offloaded applications. Network issues (wifi) won't work. Unable to connect to a wifi access point.
Replies
0
Boosts
0
Views
240
Activity
Nov ’24
Is it possible to retrieve EXIF metadata from PHAsset without downloading photos (even if offloaded to iCloud Photo Library)?
iOS (Official) Photos app can display some EXIF-related metadata (e.g. camera and lens info, ISO, shutter speed, F-number) even when photos are offloaded to iCloud and the device is not connected to internet (e.g. airplane mode). However, with the Photos.framework, we need to download photos to retrive those metadata (which means it will not work with airplane mode). I tried the following methods, but none of those worked when photos were offloaded to iCloud and the device was in airplane mode: Requesting data with PHImageManager.default().requestImageDataAndOrientation Result: It does not return Data if the photo is not stored locally on the device, even with options.deliveryMode = .fastFormat Converting PHAsset#localIdentifier to an AssetsLibrary.framework URL (assets-library://asset/...) (I am aware that AssetsLibrary.framework is deprecated, but this was just a test.) Result: If PHImageManager does not returns Data, ALAsset#defaultRepresentation().metadata() returns an empty NSDictionary
Replies
0
Boosts
0
Views
644
Activity
Nov ’24
iOS App Store keeps installing TestFlight version of app instead of App Store version
I'm having an issue with an app installation on my iPhone where it keeps installing the latest TestFlight version instead of the public App Store version. Here are the details: I initially installed version 1.24 of the app via TestFlight. I then uninstalled both the app and TestFlight and tried to reinstall the app from the App Store, which should be version 1.6 (the current public release). Despite this, the App Store keeps installing version 1.24, which is the TestFlight version. Here’s what I’ve tried so far: Uninstalled both the app and TestFlight. Restarted the iPhone to clear any cached data. Tried offloading and reinstalling the App Store app through Settings to clear its cache. Reinstalled only the App Store version, but the device still downloads the TestFlight release. Has anyone experienced this before? Are there additional steps I can take to reset the association to the App Store version? Any insights would be greatly appreciated. Thank you!
Replies
1
Boosts
0
Views
672
Activity
Oct ’24
Reply to macOS System Extension Compatibility Issues
Has anyone found ways to improve compatibility with other system extensions? That is a really, really hard problem which doesn't really have any easy answer. The first thing to understand here is what the problem actually is. Architecturally, an ES client has two primary concerns to deal with: Process individual events quickly. Minimize activities that generate additional events. In the basic case, the second concern is easy to overlook. It's easy enough for a client to mute its own helper processes (direct workers) and the work being done by other processes like Apple's daemons are (typically) relatively small. As long as the client has certain amount of parallelism, number two can often be relatively hidden. That breaks down once you hit this scenario: Some users are experiencing performance problems when running our extension alongside other system extensions At that point, what you basically have is a pipeline of ES clients which are both generating AND approving auth events for each other. Performance pr
Topic: App & System Services SubTopic: Core OS Tags:
Replies
Boosts
Views
Activity
Oct ’24
Manually offload apps
Hello, I use to be able to manually offload apps to clean up my storage space and ever since I uploaded the iOS 18 developer beta to the latest, I can’t see to find an option for it. Any help would be appreciated!
Replies
1
Boosts
0
Views
279
Activity
Oct ’24
Reply to iPhone and iPad accelerometer specifications
Hi all, I'm looking for the specifications for the accelerometers used in current iPhone and iPad devices, including the sensitivity and the update rates possible. We've never published any formal documentation about what the exact capabilities of the hardware were. However, I have a word of caution around this: Despite the documentation saying it's 100Hz, I've not yet found it to be better than 50Hz on any of iPhone SE, 8 or 11, nor iPad mini or Pros. Having worked with many developers using CoreMotion, I've seen the same pattern happen MANY times: A basic motion analysis engine is implemented, typically using the real time API and the with a target queue. The main thread or other busy thread are entangled with that algorithm, either because the code is running directly on that thread or because of implicit relationships which aren't as visible. Testing begins and the results are somewhat positive, however, there are issues with random data glitches or other oddities in the data. The assumption is made that
Topic: App & System Services SubTopic: Core OS Tags:
Replies
Boosts
Views
Activity
Sep ’24
Reply to handling files offloaded to iCloud?
Thanks Ziqiao, I'm not talking about the Remove Downloaded feature, but it's definitely something very similar. In the problem scenario, the files are stored in ~/Documents/x and if the users' hard drives get too full, macOS is moving those documents to iCloud automatically, thereby triggering the FileWatcher* to say they've been removed. I believe that behind-the-scenes Optimise Mac Storage almost certainly uses the same mechanism as the Remove Downloaded feature you mentioned (ie 'dataless files) which I'd never heard of till now. Your tech note link gave me some good keywords for further research. If it's true I'm dealing with a dataless file issue, when FileWatcher says a file was deleted can I simply ask fileExists(atPath:) to see if it's actually still there or not? I think a dataless file will still return true for a fileExists call, despite being offloaded? * FileWatcher is just using FSEvents, I believe. Pertinent code is here.
Topic: App & System Services SubTopic: Core OS Tags:
Replies
Boosts
Views
Activity
Sep ’24
handling files offloaded to iCloud?
My app saves its document files by default into ~/Documents. It does some important domain-specific stuff when a document is deleted. I monitor for deletion using https://github.com/eonist/FileWatcher Unfortunately several users have noticed my app doing this cleanup work even when they have not deleted the corresponding document. We've traced it through and realised it's the iCloud Optimise Mac Storage feature, or Store in iCloud > Desktop and Documents. I'm not sure which because I don't use these features of macOS at all, and also they seem to have been renamed or changed in Sonoma. Either way, I'm wondering: a) how I can tell in Swift whether a file has actually been deleted, or whether it's been offloaded to iCloud by macOS. b) how can I test this? My research is pointing at urlubiquitousitemdownloadingstatus but it's hard to play with it without knowing how to test it.
Replies
2
Boosts
0
Views
841
Activity
Sep ’24
Reply to Does temporary removing apps to update ios changes identifierForVendor?
Despite the possible implication with this message, this action does not actually remove the apps and reinstall them. The apps are actually only offloaded, which will free up storage used by the app but keep its existence on the device. This will not result in things like identifierForVendor, push tokens, etc. changing, any app data like documents, and app settings being lost. Argun Tekant /  DTS Engineer / Core Technologies
Topic: UI Frameworks SubTopic: UIKit Tags:
Replies
Boosts
Views
Activity
Sep ’24
Passpoint Network Performance Different using API vs .mobileconfig
Hi All, We are developing a hybrid MVNO and want to use Wi-Fi Passpoint to enable offload from our users phones when they are in range of our Wi-Fi network. The user experience of installing a .mobileconfig file is too many steps and a bad user experience which causes low adoption among our users. Instead, we want to use the NEHotspotConfigurationManager to configure a HS2.0 network using EAP-TLS. We configure these elements using NEHotspotConfiguration NEHotspotHS20Settings NEHotspotEAPSettings Our code to execute above is shown below: func configureProfile(certificate: String, issuingCa: String, caChain: [String], resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) { #if !targetEnvironment(simulator) let keychainQuery = [kSecClass as String: kSecClassCertificate] as [String: Any] as CFDictionary let status = SecItemDelete(keychainQuery) print(Delete status (status)) let url = Bundle.main.url(forResource: serverCA, withExtension: crt)! let caCert = try! String(content
Replies
1
Boosts
0
Views
556
Activity
Aug ’24
Performant alternative to scaling a CIImage / PixelBuffer
Hey, I’m building a camera app where I am applying real time effects to the view finder. One of those effects is a variable blur, so to improve performance I am scaling down the input image using CIFilter.lanczosScaleTransform(). This works fine and runs at 30FPS, but when running the metal profiler I can see that the scaling transforms use a lot of GPU time, almost as much as the variable blur. Is there a more efficient way to do this? The simplified chain is like this: Scale down viewFinder CVPixelBuffer (CIFilter.lanczosScaleTransform) Scale up depthMap CVPixelBuffer to match viewFinder size (CIFilter.lanczosScaleTransform) Create CIImages from both CVPixelBuffers Apply VariableDepthBlur (CIFilter.maskedVariableBlur) Scale up final image to metal view size (CIFilter.lanczosScaleTransform) Render CIImage to a MTKView using CIRenderDestination From some research, I wonder if scaling the CVPixelBuffer using the accelerate framework would be faster? Also, Instead of scaling the final image, perhaps I could offload
Replies
2
Boosts
0
Views
1.1k
Activity
Jul ’24