I'm trying to open zip file on Android 4.3 emulator using TrueZip 7.7.3
the line
TArchiveDetector ad = new TArchiveDetector("myext", new ZipDriver(IOPoolLocator.SINGLETON));
throws java.lang.ExceptionInInitializerError caused by
java.nio.charset.UnsupportedCharsetException: IBM437
at java.nio.charset.Charset.forName(Charset.java:303)
at de.schlichtherle.truezip.fs.archive.zip.ZipDriver.<clinit>(ZipDriver.java:75)
... 16 more
Is it possible to use TrueZip on Android? I need it because java.util.ZipFile on Android is old and cannot handle more than 65536 files in zip archive.
TrueZIP on the Android platform is generally unsupported because the platform misses or used to miss some essential classes, e.g.
java.util.ServiceLoader. Regarding the missing IBM437 character set: A provider is actually bundled into TrueZIP, but theServiceLoaderclass is required to find and load it. You may try to use theJarDriverinstead (which uses UTF-8 instead of IBM437), but I'm afraid you will only run into similar issues because TrueZIP depends a lot on theServiceLoaderclass in order to load the kernel, the drivers, the extensions etc.