I'm writing an app using the new Google Play Services Vision libraries to detect barcodes.
Everything works fine on most devices I've tested on, but one particular device refuses to install the native libraries (mentioned in this comment)
// Note: The first time that an app using the barcode or face API is installed on a
// device, GMS will download a native libraries to the device in order to do detection.
// Usually this completes before the app is run for the first time. But if that
// download has not yet completed, then the above call will not detect any barcodes
// and/or faces.
//
// isOperational() can be used to check if the required native libraries are currently
// available. The detectors will automatically become operational once the library
// downloads complete on device.
In the logs of the device, I have found this:
D/Vision (28899): Registration status barcode_armeabi_v7a.zip: There is not enough space to perform the download.
D/Vision (28899): Download status barcode_armeabi_v7a.zip: There is not enough space to perform the download.
However the device (HTC One M8 / Android 5.0.1 / Play Services 7.8.99 2134222-438) definitely has enough free space - 800mb. I could free some more space on this particular device, but I can't tell potentially tens of thousands of users to do that...
Can any Google Developer provide insight? Is this a bug? How much free space does a device need? What mechanisms are used to determine if a device has enough free space?