Zip plugin error

What device are you testing this on?

Rob

The device is a Galaxy S3 (4.4.2 and API level 19)

Any follow up on this?

For what it’s worth. We just tested with the latest 2019.3515 build and zip is working for us on our Samsung S8 test device. 

So is this another issue with older devices? The last issue I had was also occurring only on older devices.

I published a small rollout yesterday and started getting various crash reports for the zip plugin. I only have a small snippets logged, but they all complain about missing symbol “srand”.

error loading module plugin.zip from file dataapp-libse.appfamily.dinoadventure-1libplugin.zip.so:     dlopen failed: cannot locate symbol srand referenced by libplugin.zip.so...

Corona build 2019.3516

Out of 62 reports so far, the affected versions are:

7.0

4.4.4

4.4.2

4.1.2

4.0.4

Of which the majority of reports are from version 4.4.4.

The affected versions represent roughly a third of the active installs for the app (170K), so it is a significant amount of users.

Most of my apps use the zip plugin, so for me this issue is a showstopper for 64-bit adoption.

Hope it is an easy fix :slight_smile:

srand, is the standard Unix C library call to seed a random number generator. It’s very odd that would be missing because it either means a corrupt standard C library on that device or it’s missing, but if it was missing, just about every other C-lib call would be blowing up.

Very odd. And if it was a code issue, it would blow up everywhere.

Rob

@RobMiracle Seems like I spoke too soon. We recently did a release using Corona 2019.3515 where we released the AAB bundle, and very quickly we started receiving complaints from users about the zip. Attached is a screenshot of the error msg, 

https://www.dropbox.com/s/ek70b1u4oylh2x4/ZipError.png?dl=0


Runtime Error

error loading module `plugin.zip` from file `/data/app-lib/com.sx.puzzingo-1/libplugin.zip.so`:

We are trying to get more info on devices & OS, but I don’t have that info right now. We do use zip files extensively within our app, so this is a showstopper for us as well. It definitely seems like a real issue with bundle build. Can you investigate? 

There was a discussion this morning on the community slack. The plugin has been fixed. You can try building again.

Rob

OK - I just see it. Thanks! Do I need to update my Corona version? Or is this just a server-side fix on your end? 

It should be a server-side fix.

Rob

I published an AAB using 2019.3517. Good news and bad news. 

Good : No more srand complaints. 

Bad : I have so far 24 reports of zip plugin failures, all for versions 5.x. The error is now complaining about libcorona.so

error loading module plugin.zip from file dataappse.appfamily.puzzle.super2.free-1libarm64libplugin.zip.so: dlopen failed: library libcorona.so not found error loading module plugin.zip from file dataappse.appfamily.puzzle.super2.free-2libarm64libplugin.zip.so: dlopen failed: could not load library libcorona.so needed by dataappse.appfamily.puzzle.super2.free-2libarm64libplugin.zip.so caused by library libcorona.so not found

Android versions affected (so far):

5.0.1

5.0

5.1

5.0.2

These errors were generated by 5 device models:

Lenovo TAB 2 A8-50L

ALE-L21

HUAWEI TIT-L01

A1601

vivo Y51L

Tried uploading an APK instead of AAB on August 29. Update published today, Zip plugin still broken

Is the problem same? Like, not working on 32bit devices?

It’s the same as what I reported in my post on August 26

The devices are reporting system.getInfo(“architectureInfo”) as “unknown”

There are two models reporting the error thus far:

A37f

CPH1605

The A37f appears to have a Qualcomm Snapdragon 410:

https://www.mysmartprice.com/mobile/oppo-a37f-msp11047

Which supposedly has both 32 and 64-bit support:

https://www.qualcomm.com/products/snapdragon-processors-410

Got it. Can you please do the following for both devices (make sure only 1 device is plugged in, no running Android Simulators etc)

  1. Download google’s bundle tool https://github.com/google/bundletool/releases

  2. plug in a device and run following:

    java -jar ~/Downloads/bundletool-all-0.10.2.jar get-device-spec --output=~/Desktop/device1.json

  3. Repeat for other devices, replacin device1 with other number/names for different devices.

  4. Upload new files from Desktop somewhere. I assumed macOS, but windows would have same command line, except path for jar and output dir.

I’m sorry, these are not my devices. I have a crash-reporting system that logs Lua errors to my database. So, for example, for that device I just have what was reported, i.e.:

model: A37f  // system.getInfo(“model”)

platVersion: 5.1.1 // system.getInfo(“platformVersion”)

coronaVersion: 2019.3519 // system.getInfo(“build”)

arch: Unknown // system.getInfo(“architectureInfo”)

Hello! After hours of investigation I realized that this is not a zip plugin issue. It seems we’ve hit Android 5 issues with loading arm64 libraries in general. I’m working on a fix, but lets move this conversation to this topic https://forums.coronalabs.com/topic/76166-error-loading-module-gamenetwork-on-some-devices/