[Android Apps and Games] Didgeridoohan:
[MENTION=2954544]tliebeck[/MENTION] Since v7.0 dropped, I've noticed an issue with the archive utility.

I was making a zip to test a Magisk module, but the zip would refuse to install through the Magisk Manager. Repackaging the zip with another utility (7zip on Windows) works fine.

The Manager just uses the native Java zip package, so there's nothing special there.

Here's a logcat when a zip fails, and I'm also attaching the zip used:

04-11 12:47:20.611 W/System.err(16238): java.util.zip.ZipException: only DEFLATED entries can have EXT descriptor
04-11 12:47:20.611 W/System.err(16238): at java.util.zip.ZipInputStream.readLOC(ZipInputStream.java:321)
04-11 12:47:20.611 W/System.err(16238): at java.util.zip.ZipInputStream.getNextEntry(ZipInputStream.java:124)
04-11 12:47:20.611 W/System.err(16238): at com.topjohnwu.magisk.utils.ZipUtils.unzip(Unknown Source:5)
04-11 12:47:20.611 W/System.err(16238): at com.topjohnwu.magisk.utils.ZipUtils.unzip(Unknown Source:10)
04-11 12:47:20.611 W/System.err(16238): at com.topjohnwu.magisk.asyncs.FlashZip.unzipAndCheck(Unknown Source:11)
04-11 12:47:20.611 W/System.err(16238): at com.topjohnwu.magisk.asyncs.FlashZip.doInBackground(Unknown Source:71)
04-11 12:47:20.611 W/System.err(16238): at com.topjohnwu.magisk.asyncs.FlashZip.doInBackground(Unknown Source:2)
04-11 12:47:20.611 W/System.err(16238): at android.os.AsyncTask$2.call(AsyncTask.java:333)
04-11 12:47:20.611 W/System.err(16238): at java.util.concurrent.FutureTask.run(FutureTask.java:266)
04-11 12:47:20.611 W/System.err(16238): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
04-11 12:47:20.611 W/System.err(16238): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
04-11 12:47:20.611 W/System.err(16238): at java.lang.Thread.run(Thread.java:764)
04-11 12:47:20.611 W/System.err(16238): java.util.zip.ZipException: only DEFLATED entries can have EXT descriptor
04-11 12:47:20.611 W/System.err(16238): at java.util.zip.ZipInputStream.readLOC(ZipInputStream.java:321)
04-11 12:47:20.611 W/System.err(16238): at java.util.zip.ZipInputStream.getNextEntry(ZipInputStream.java:124)
04-11 12:47:20.611 W/System.err(16238): at com.topjohnwu.magisk.utils.ZipUtils.unzip(Unknown Source:5)
04-11 12:47:20.611 W/System.err(16238): at com.topjohnwu.magisk.utils.ZipUtils.unzip(Unknown Source:10)
04-11 12:47:20.611 W/System.err(16238): at com.topjohnwu.magisk.asyncs.FlashZip.unzipAndCheck(Unknown Source:11)
04-11 12:47:20.612 W/System.err(16238): at com.topjohnwu.magisk.asyncs.FlashZip.doInBackground(Unknown Source:71)
04-11 12:47:20.612 W/System.err(16238): at com.topjohnwu.magisk.asyncs.FlashZip.doInBackground(Unknown Source:2)
04-11 12:47:20.612 W/System.err(16238): at android.os.AsyncTask$2.call(AsyncTask.java:333)
04-11 12:47:20.612 W/System.err(16238): at java.util.concurrent.FutureTask.run(FutureTask.java:266)
04-11 12:47:20.612 W/System.err(16238): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
04-11 12:47:20.612 W/System.err(16238): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
04-11 12:47:20.612 W/System.err(16238): at java.lang.Thread.run(Thread.java:764)