Monday, November 25, 2024

development – Can I modify my zip so iOS won’t auto unpack it on download?

I maintain a free tool to produce books in DAISY format for the blind. One of the more widely-used DAISY reader programs is Dolphin EasyReader which has an iOS version. When “side-loading” a book into EasyReader (rather than obtaining it from a library listing), the user needs to point EasyReader at a ZIP file (with .zip extension) containing the DAISY book. Pointing EasyReader at an unpacked folder does not work.

When blind users download a DAISY book produced by my tool, if they’re on iOS, their device automatically unpacks the zip file into a folder. That causes confusion, because EasyReader needs to be given the non-unpacked .zip file.

Currently, I add a file called 0000.txt containing my message about how if they’re having trouble launching it in EasyReader then they should go up one level and find the original .zip file rather than the unpacked folder. But this was (a) hard to write without it looking like I’m disrespecting their operating system, (b) even harder to write in lots of different languages other than English and (c) still requires the user to take extra steps.

I know Apple devices can be configured on the user side not to auto unpack .zip files, but rather than tell my users to change their settings, I’d much rather set something on my side if possible. Is there anything I can do to the zip file that says “hey iOS, if you’re seeing this, please don’t auto unpack this particular zip file” (but without actually corrupting the zip file because EasyReader still needs to unpack it)?

(I’m unsure from the user reports whether the auto extraction is being performed by Safari or by Files. Either way, I’d like to stop it because in this particular case it’s not helping. Unfortunately it doesn’t seem to be an option to change the extension as .zip is required by most DAISY readers.)

Related Articles

Latest Articles