Post

Replies

Boosts

Views

Activity

Reply to Push notifications were not successfully delivered and have bad status
My situation in Transloader is like this: I save CKRecords in the private database (not zoned), with CKQuerySubscriptions for silent notifications. They work perfectly fine on all iOS devices, but the Mac either doesn't receive them, or very late (> 10 mins after the fact). Again, it's the same sync code running on Mac and iOS, but the Mac just doesn't get the notifications most of the time. I had to resort to polling the cloud as a temporary measure - that can't be what Apple intends here, since one of the reasons push notifications exist is to avoid polling. I did open a DTS but have not heard back yet. Will update if/when I do. – Matt
Nov ’23
Reply to Apple Archive .zlib compression algorithm unarchiving
Thank you, eskimo. As always, you've brought clarity into this situation. I just want to turn a folder of files into a single "binary data" file, so that I can upload it to iCloud and create a shareable link for it, and have it be openable on all sorts of operating systems, so I'll give [2] a shot, perhaps it's enough. I understand now that using the Apple Archive framework to create an archive of a folder (compressed or not) will only produce "Apple (Encrypted) Archive" files, openable only on Apple platforms. If I need something else, I'd have to go a level deeper and use a (zip) compression based on the Compression framework. I see now that the documentation for AppleArchive.Algorithm.zlib is more or less just a reflection of the Compression framework's equivalent, "COMPRESSION_ZLIB", and does not actually mean that using it will render the file created by the Apple Archive framework openable on other operating systems. That may be true for the Compression framework, but not the Apple Archive framework. There is a great Swift zip library out there (ZIPFoundation), actually based on the Compression framework, in case anyone needs it: https://github.com/weichsel/ZIPFoundation (I might default to it as well for this, but I like to use as little external libraries as possible in my code, so I'll try eskimo's [2] first). Thank you for clarifying, Matthias
Aug ’22