Issue with QR Code Plugin Since Thursday!

Hi, hope you can help - really scratching my head on this one!

I have been using the QR Code plugin in my app for about 9 months.  I recently had to issue an updated app version and so compiled the App on Thursday (13th).   We have started to hear issues today from one user who has the app installed on several Hudl 2 Android devices.    These devices were running the previous version of the app (which also had the plugin).

I happen to have one of these devices.  The new version of the App will not run on my device.  The error message is before the app starts and it is: -

“Unfortunately, [App Name] has stopped.”

When I compiled a version of the app with the Plugin code disabled it works.  As a work around I have had to upload to the Play Store a new version of the app with the plug in removed.  However, I have paid for the plug in so it would be good if it works on these devices.

Remember, these devices worked fine before Thursday with a APK that compiled with the Plug In enabled on June 1st.

I have done some more digging.  When I access the log file I get the following: -

I/ActivityManager( &nbsp;531): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 pkg=uk.co.carecontrol.carecontrolmobilecloud cmp=uk.co.carecontrol.carecontrolmobilecloud/com.ansca.corona.CoronaActivity bnds=[475,62][712,268]} from uid 10013 on display 0 V/WindowManager( &nbsp;531): addAppToken: AppWindowToken{15727f3a token=Token{a581665 ActivityRecord{2c4335c u0 uk.co.carecontrol.carecontrolmobilecloud/com.ansca.corona.CoronaActivity t25}}} to stack=1 task=25 at 0 V/WindowManager( &nbsp;531): Adding window Window{170f2948 u0 Starting uk.co.carecontrol.carecontrolmobilecloud} at 12 of 18 (after Window{1a72110 u0 com.android.settings/com.android.settings.SubSettings}) W/BroadcastQueue( &nbsp;531): Permission Denial: broadcasting Intent { act=com.android.launcher3.action.LAUNCH flg=0x10 (has extras) } from com.tesco.launcher (pid=935, uid=10013) requires com.google.android.launcher.permission.RECEIVE\_LAUNCH\_BROADCASTS due to receiver com.google.android.googlequicksearchbox/com.google.android.apps.gsa.search.core.icingsync.ApplicationLaunchReceiver W/BroadcastQueue( &nbsp;531): Permission Denial: receiving Intent { act=com.android.launcher3.action.LAUNCH flg=0x10 (has extras) } to com.google.android.googlequicksearchbox/com.google.android.apps.gsa.search.core.icingsync.ApplicationLaunchReceiver requires com.android.launcher3.permission.RECEIVE\_LAUNCH\_BROADCASTS due to sender com.tesco.launcher (uid 10013) W/BroadcastQueue( &nbsp;531): Permission Denial: broadcasting Intent { act=com.android.launcher3.action.LAUNCH flg=0x10 (has extras) } from com.tesco.launcher (pid=935, uid=10013) requires com.google.android.launcher.permission.RECEIVE\_LAUNCH\_BROADCASTS due to receiver com.google.android.gms/.icing.proxy.ApplicationLauncherReceiver W/BroadcastQueue( &nbsp;531): Permission Denial: receiving Intent { act=com.android.launcher3.action.LAUNCH flg=0x10 (has extras) } to com.google.android.gms/.icing.proxy.ApplicationLauncherReceiver requires com.android.launcher3.permission.RECEIVE\_LAUNCH\_BROADCASTS due to sender com.tesco.launcher (uid 10013) W/AudioIntelHal/AudioPlatformState( &nbsp;264): clearKeys: Unhandled argument: output\_usecase=0 D/EVENT\_THREAD( &nbsp;264): void CEventThread::trig(void\*, uint32\_t): in D/EVENT\_THREAD( &nbsp;264): void CEventThread::trig(void\*, uint32\_t): out D/AudioFlinger( &nbsp;264): setProcessedAudioState(trackId=226, processed=0) I/ActivityManager( &nbsp;531): Start proc 6911:uk.co.carecontrol.carecontrolmobilecloud/u0a138 for activity uk.co.carecontrol.carecontrolmobilecloud/com.ansca.corona.CoronaActivity D/ &nbsp; &nbsp; &nbsp; &nbsp;( &nbsp;935): Surface destroy: ANDROID\_NATIVE\_WINDOW\_MAGIC I/MultiDex( 6911): VM with version 2.1.0 has multidex support I/MultiDex( 6911): install I/MultiDex( 6911): VM has multidex support, MultiDex support library is disabled. E/TinyAlsaStream( &nbsp;264): getFramesAvailable: Unable to get available frames E/TinyAlsaStream( &nbsp;264): getFramesAvailable: Unable to get available frames E/TinyAlsaStream( &nbsp;264): getFramesAvailable: Unable to get available frames E/TinyAlsaStream( &nbsp;264): getFramesAvailable: Unable to get available frames D/EVENT\_THREAD( &nbsp;264): void CEventThread::run() Do poll with timeout: -1 D/AndroidRuntime( 6911): Shutting down VM E/AndroidRuntime( 6911): FATAL EXCEPTION: main E/AndroidRuntime( 6911): Process: uk.co.carecontrol.carecontrolmobilecloud, PID: 6911 E/AndroidRuntime( 6911): java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/uk.co.carecontrol.carecontrolmobilecloud-1/base.apk"],nativeLibraryDirectories=[/data/app/uk.co.carecontrol.carecontrolmobilecloud-1/lib/x86, /vendor/lib, /system/lib]]] couldn't find "liblua.so" E/AndroidRuntime( 6911): &nbsp; &nbsp; &nbsp; &nbsp;at java.lang.Runtime.loadLibrary(Runtime.java:366) E/AndroidRuntime( 6911): &nbsp; &nbsp; &nbsp; &nbsp;at java.lang.System.loadLibrary(System.java:988) E/AndroidRuntime( 6911): &nbsp; &nbsp; &nbsp; &nbsp;at com.ansca.corona.JavaToNativeShim.\<clinit\>(JavaToNativeShim.java:115) E/AndroidRuntime( 6911): &nbsp; &nbsp; &nbsp; &nbsp;at com.ansca.corona.CoronaEnvironment.setLuaErrorHandler(CoronaEnvironment.java:372) E/AndroidRuntime( 6911): &nbsp; &nbsp; &nbsp; &nbsp;at com.ansca.corona.CoronaEnvironment.\<clinit\>(CoronaEnvironment.java:50) E/AndroidRuntime( 6911): &nbsp; &nbsp; &nbsp; &nbsp;at com.ansca.corona.CoronaActivity.onCreate(CoronaActivity.java:222) E/AndroidRuntime( 6911): &nbsp; &nbsp; &nbsp; &nbsp;at android.app.Activity.performCreate(Activity.java:5990) E/AndroidRuntime( 6911): &nbsp; &nbsp; &nbsp; &nbsp;at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1106) E/AndroidRuntime( 6911): &nbsp; &nbsp; &nbsp; &nbsp;at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2278) E/AndroidRuntime( 6911): &nbsp; &nbsp; &nbsp; &nbsp;at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387) E/AndroidRuntime( 6911): &nbsp; &nbsp; &nbsp; &nbsp;at android.app.ActivityThread.access$800(ActivityThread.java:151) E/AndroidRuntime( 6911): &nbsp; &nbsp; &nbsp; &nbsp;at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303) E/AndroidRuntime( 6911): &nbsp; &nbsp; &nbsp; &nbsp;at android.os.Handler.dispatchMessage(Handler.java:102) E/AndroidRuntime( 6911): &nbsp; &nbsp; &nbsp; &nbsp;at android.os.Looper.loop(Looper.java:135) E/AndroidRuntime( 6911): &nbsp; &nbsp; &nbsp; &nbsp;at android.app.ActivityThread.main(ActivityThread.java:5258) E/AndroidRuntime( 6911): &nbsp; &nbsp; &nbsp; &nbsp;at java.lang.reflect.Method.invoke(Native Method) E/AndroidRuntime( 6911): &nbsp; &nbsp; &nbsp; &nbsp;at java.lang.reflect.Method.invoke(Method.java:372) E/AndroidRuntime( 6911): &nbsp; &nbsp; &nbsp; &nbsp;at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903) E/AndroidRuntime( 6911): &nbsp; &nbsp; &nbsp; &nbsp;at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698) W/ActivityManager( &nbsp;531): &nbsp; Force finishing activity 1 uk.co.carecontrol.carecontrolmobilecloud/com.ansca.corona.CoronaActivity

This is not really helpful as when I compare it to the app that runs OK there are only a couple of lines that seem to be different, they are: -

They are: - App with plug in enabled (and so fails): -

W/AudioIntelHal/AudioPlatformState( &nbsp;264): clearKeys: Unhandled argument: output\_usecase=0 D/EVENT\_THREAD( &nbsp;264): void CEventThread::trig(void\*, uint32\_t): in D/EVENT\_THREAD( &nbsp;264): void CEventThread::trig(void\*, uint32\_t): out D/AudioFlinger( &nbsp;264): setProcessedAudioState(trackId=226, processed=0) I/ActivityManager( &nbsp;531): Start proc 6911:uk.co.carecontrol.carecontrolmobilecloud/u0a138 for activity uk.co.carecontrol.carecontrolmobilecloud/com.ansca.corona.CoronaActivity D/ &nbsp; &nbsp; &nbsp; &nbsp;( &nbsp;935): Surface destroy: ANDROID\_NATIVE\_WINDOW\_MAGIC I/MultiDex( 6911): VM with version 2.1.0 has multidex support I/MultiDex( 6911): install I/MultiDex( 6911): VM has multidex support, MultiDex support library is disabled. E/TinyAlsaStream( &nbsp;264): getFramesAvailable: Unable to get available frames E/TinyAlsaStream( &nbsp;264): getFramesAvailable: Unable to get available frames E/TinyAlsaStream( &nbsp;264): getFramesAvailable: Unable to get available frames E/TinyAlsaStream( &nbsp;264): getFramesAvailable: Unable to get available frames D/EVENT\_THREAD( &nbsp;264): void CEventThread::run() Do poll with timeout: -1 D/AndroidRuntime( 6911): Shutting down VM E/AndroidRuntime( 6911): FATAL EXCEPTION: main

App that loads with plugin disabled: -

D/EVENT\_THREAD( &nbsp;264): void CEventThread::run() Do poll with timeout: -1 D/houdini ( 7215): [7215] Initialize library(version: 5.2.2\_y.47738 RELEASE)... successfully. E/TinyAlsaStream( &nbsp;264): getFramesAvailable: Unable to get available frames E/TinyAlsaStream( &nbsp;264): getFramesAvailable: Unable to get available frames E/TinyAlsaStream( &nbsp;264): getFramesAvailable: Unable to get available frames E/TinyAlsaStream( &nbsp;264): getFramesAvailable: Unable to get available frames I/MultiDex( 7215): VM with version 2.1.0 has multidex support I/MultiDex( 7215): install I/MultiDex( 7215): VM has multidex support, MultiDex support library is disabled. D/ &nbsp; &nbsp; &nbsp; &nbsp;( &nbsp;935): Surface destroy: ANDROID\_NATIVE\_WINDOW\_MAGIC D/houdini ( 7215): [7215] Added shared library /data/app-lib/uk.co.carecontrol.testvers-1/liblua.so for ClassLoader by Native Bridge. D/houdini ( 7215): [7215] Added shared library /data/app-lib/uk.co.carecontrol.testvers-1/libjnlua5.1.so for ClassLoader by Native Bridge. I/art &nbsp; &nbsp; ( 7215): Thread[1,tid=7215,WaitingForJniOnLoad,Thread\*=0xf3c3b500,peer=0x74e61000,"main"] recursive attempt to load library "/data/app-lib/uk.co.carecontrol.testvers-1/libjnlua5.1.so" I/OpenAL\_SLES( 7215): alc\_opensles\_init I/CMCMADSDK( 6954): CmPicksNative trySendImpression D/houdini ( 7215): [7215] Added shared library /data/app-lib/uk.co.carecontrol.testvers-1/libopenal.so for ClassLoader by Native Bridge. D/houdini ( 7215): [7215] Added shared library /data/app-lib/uk.co.carecontrol.testvers-1/libmpg123.so for ClassLoader by Native Bridge. D/houdini ( 7215): [7215] Added shared library /data/app-lib/uk.co.carecontrol.testvers-1/libalmixer.so for ClassLoader by Native Bridge. D/houdini ( 7215): [7215] Added shared library /data/app-lib/uk.co.carecontrol.testvers-1/libcorona.so for ClassLoader by Native Bridge.

Anything else I can do to try and work out what the issue is?  The tablet details are: -

Name: Hudl 2

Android Version: 5.1

BIOS Version: 5.04.48.0056.e

Kernel Version: 3.10.62-x86_64_byt-g105afb7 android-build@mobile.tesco.com #1

That device has an Atom processor? Which is not ARM, but x86, right?

That could be an issue, because QR Scanner uses some native code.
I have an idea, please wait.

That makes sense Lerg as it works on the Hudl 1 which used an ARM achtitecture. Interestingly the app worked in June with the plugin enabled on these devices so something must have changed. Anything you can do would be really appreciated!! :slight_smile:

Hi Lerg, sorry to push you, just want to get back to our user base with regards expectations with this one.  Do you think a fix is possible and if so any rough idea on timescales?  Alternatively if the fix is looking doubtful I can go back and let them know the bad news with regards the equipment…

matt405, try now using the latest daily build (2972+).

Lerg - works a treat!  Great work, super fast, all my users are back to being happy!!!