Error on Android Preview

  • Fuse version: 0.35.0 (build 10867)
  • OS: Windows

When trying to preview the parallax-pages example app I do the following -

  1. Start an Android emulator: Android 7.1.1 (api level 25) CPU/ABI: Google APIs Intel Atrom (x86_64)
  2. In the fuse dashboard try preview with android and I get the “looks like android developer tools are missing” dialog
  3. Then I try it fro the command line with: fuse preview -t=Android
  4. Now I get the following error -
C:\Users\ben\OneDrive\Documents\FuseProjects\parallax-pages>fuse preview -t=Android
Fuse 0.35.0 (build 10867)
Build started: FullCompile
Configuring (4.4 s)
Compiling syntax tree (1.4 s)
Generating code and data (1:24)
Building Android app
1/2: libParallaxPages.so
2/2: ParallaxPages.apk
(1:59)

Build completed in 210.18 seconds
Build ended
Installing APK on 1 device(s)Failed to install C:\Users\ben\OneDrive\Documents\FuseProjects\parallax-pages\build\Android\Preview\ParallaxPages.apk: Failure [INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113]

ERROR: Process has exited, so the requested information is not available.
fuse: Android run failed

Thanks for any suggestions.
Ben

As far as I know you can only build for ARM CPUs with the standard setup.
Also, supporting (testing with) Android emulators is not currently a priority for Fuse, as discussed here. We strongly recommend testing on real HW (for all the cases where local preview is not accurate enough).

Thanks for the heads up on emulator support…
Please take a look and let me know if you can help with this stacktrace.

Here is my error when I try to fuse preview -t=Android on Mac with a Samsung tablet with v4.4.2 Android.

I see the app added to the Tablet but get a popup error “app has stopped”.

(btw, from the Fuse Dashboard - Android preview doesn’t seem to like my setup. It keeps sending me to the doc page.)

Installing APK on 1 device(s)
Launching activity 'weatherapp'
Running logcat on 4100b9b91cd49000
D/dalvikvm( 9755): Late-enabling CheckJNI
W/ActivityManager(  551): Permission Denial: getCurrentUser() from pid=9755, uid=10193 requires android.permission.INTERACT_ACROSS_USERS
D/weatherapp( 9755): SDK: 19
D/dalvikvm( 9755): No JNI_OnLoad found in /system/lib/liblog.so 0x41fdc3e0, skipping init
D/dalvikvm( 9755): Trying to load lib /data/app-lib/com.apps.weatherapp-1/libstlport_shared.so 0x41fdc3e0
D/dalvikvm( 9755): Added shared lib /data/app-lib/com.apps.weatherapp-1/libstlport_shared.so 0x41fdc3e0
D/dalvikvm( 9755): No JNI_OnLoad found in /data/app-lib/com.apps.weatherapp-1/libstlport_shared.so 0x41fdc3e0, skipping init
D/dalvikvm( 9755): Trying to load lib /data/app-lib/com.apps.weatherapp-1/libV8Simple.so 0x41fdc3e0
D/dalvikvm( 9755): Added shared lib /data/app-lib/com.apps.weatherapp-1/libV8Simple.so 0x41fdc3e0
D/dalvikvm( 9755): No JNI_OnLoad found in /data/app-lib/com.apps.weatherapp-1/libV8Simple.so 0x41fdc3e0, skipping init
D/dalvikvm( 9755): Trying to load lib /data/app-lib/com.apps.weatherapp-1/libweatherapp.so 0x41fdc3e0
D/dalvikvm( 9755): Added shared lib /data/app-lib/com.apps.weatherapp-1/libweatherapp.so 0x41fdc3e0
W/ActivityManager(  551): Permission Denial: getCurrentUser() from pid=9755, uid=10193 requires android.permission.INTERACT_ACROSS_USERS
D/GC      ( 9755): <tid=9755> OES20 ===> GC Version   : GC Ver rls_pxa988_KK44_GC13.20 
D/GC      ( 9755): 
D/GC      ( 9755): <tid=9755> OES20 ===> GC Version   : GC Ver rls_pxa988_KK44_GC13.20 
D/GC      ( 9755): 
D/GC      ( 9755): <tid=9755> OES20 ===> GC Version   : GC Ver rls_pxa988_KK44_GC13.20 
D/GC      ( 9755): 
W/dalvikvm( 9755): dvmFindClassByName rejecting 'com/uno/UnoObject'
W/dalvikvm( 9755): dvmFindClassByName rejecting 'com/uno/BoolArray'
W/dalvikvm( 9755): dvmFindClassByName rejecting 'com/uno/ByteArray'
W/dalvikvm( 9755): dvmFindClassByName rejecting 'com/uno/ShortArray'
W/dalvikvm( 9755): dvmFindClassByName rejecting 'com/uno/IntArray'
W/dalvikvm( 9755): dvmFindClassByName rejecting 'com/uno/LongArray'
W/dalvikvm( 9755): dvmFindClassByName rejecting 'com/uno/FloatArray'
W/dalvikvm( 9755): dvmFindClassByName rejecting 'com/uno/DoubleArray'
W/dalvikvm( 9755): dvmFindClassByName rejecting 'com/uno/StringArray'
W/dalvikvm( 9755): dvmFindClassByName rejecting 'com/uno/ObjectArray'
E/Qmage   ( 9755): onDecode : QmageDecodeFrame 20140421 Rev.6376 
E/Qmage   ( 9755): This is decoding
E/Qmage   ( 9755): decoding stream->hasLength()
E/Qmage   ( 9755): onDecode : QmageDecParseHeader call : QM
E/Qmage   ( 9755): Qmage parsing for decoding ok
E/Qmage   ( 9755): onDecode :  QmageHeader.NinePatched 0
E/Qmage   ( 9755): onDecode : QmageHeader Height() 22 Width() : 16 sampleSize : 1
E/Qmage   ( 9755): Qmage Make Color table
E/Qmage   ( 9755): SkBitmap::kIndex8_Config == config && 1 == sampleSize
E/Qmage   ( 9755): onDecode : return true QM
W/ResourceType( 9755): Too many attribute references, stopped at: 0x01010099
W/ResourceType( 9755): Too many attribute references, stopped at: 0x0101009a
W/ResourceType( 9755): Too many attribute references, stopped at: 0x0101009b
W/System.err( 9755): android.view.InflateException: Binary XML file line #38: Error inflating class com.android.internal.widget.ActionBarView
W/System.err( 9755): 	at android.view.LayoutInflater.createView(LayoutInflater.java:626)
W/System.err( 9755): 	at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:702)
W/System.err( 9755): 	at android.view.LayoutInflater.rInflate(LayoutInflater.java:761)
W/System.err( 9755): 	at android.view.LayoutInflater.rInflate(LayoutInflater.java:769)
W/System.err( 9755): 	at android.view.LayoutInflater.inflate(LayoutInflater.java:498)
W/System.err( 9755): 	at android.view.LayoutInflater.inflate(LayoutInflater.java:398)
W/System.err( 9755): 	at android.view.LayoutInflater.inflate(LayoutInflater.java:354)
W/System.err( 9755): 	at com.android.internal.policy.impl.PhoneWindow.generateLayout(PhoneWindow.java:3296)
W/System.err( 9755): 	at com.android.internal.policy.impl.PhoneWindow.installDecor(PhoneWindow.java:3359)
W/System.err( 9755): 	at com.android.internal.policy.impl.PhoneWindow.getDecorView(PhoneWindow.java:1886)
W/System.err( 9755): 	at android.app.Activity.initActionBar(Activity.java:2008)
W/System.err( 9755): 	at android.app.Activity.getActionBar(Activity.java:1995)
W/System.err( 9755): 	at com.foreign.Fuse.Platform.SystemUI.HideActionBar78(SystemUI.java:186)
W/System.err( 9755): 	at com.foreign.Fuse.Platform.SystemUI.OnCreate94(SystemUI.java:257)
W/System.err( 9755): 	at com.Bindings.ExternedBlockHost.OnCreate94(ExternedBlockHost.java:457)
W/System.err( 9755): 	at com.fuse.ActivityNativeEntryPoints.cppOnCreate(Native Method)
W/System.err( 9755): 	at com.fuse.App.onCreate(App.java:86)
W/System.err( 9755): 	at com.apps.weatherapp.weatherapp.onCreate(weatherapp.java:57)
W/System.err( 9755): 	at android.app.Activity.performCreate(Activity.java:5459)
W/System.err( 9755): 	at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1093)
W/System.err( 9755): 	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2364)
W/System.err( 9755): 	at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2458)
W/System.err( 9755): 	at android.app.ActivityThread.access$900(ActivityThread.java:172)
W/System.err( 9755): 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1305)
W/System.err( 9755): 	at android.os.Handler.dispatchMessage(Handler.java:102)
W/System.err( 9755): 	at android.os.Looper.loop(Looper.java:146)
W/System.err( 9755): 	at android.app.ActivityThread.main(ActivityThread.java:5598)
W/System.err( 9755): 	at java.lang.reflect.Method.invokeNative(Native Method)
W/System.err( 9755): 	at java.lang.reflect.Method.invoke(Method.java:515)
W/System.err( 9755): 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1283)
W/System.err( 9755): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1099)
W/System.err( 9755): 	at dalvik.system.NativeStart.main(Native Method)
W/System.err( 9755): Caused by: java.lang.reflect.InvocationTargetException
W/System.err( 9755): 	at java.lang.reflect.Constructor.constructNative(Native Method)
W/System.err( 9755): 	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
W/System.err( 9755): 	at android.view.LayoutInflater.createView(LayoutInflater.java:600)
W/System.err( 9755): 	... 31 more
W/System.err( 9755): Caused by: android.view.InflateException: Binary XML file line #35: Error inflating class android.widget.TextView
W/System.err( 9755): 	at android.view.LayoutInflater.createView(LayoutInflater.java:626)
W/System.err( 9755): 	at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
W/System.err( 9755): 	at android.view.LayoutInflater.onCreateView(LayoutInflater.java:675)
W/System.err( 9755): 	at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:700)
W/System.err( 9755): 	at android.view.LayoutInflater.rInflate(LayoutInflater.java:761)
W/System.err( 9755): 	at android.view.LayoutInflater.rInflate(LayoutInflater.java:769)
W/System.err( 9755): 	at android.view.LayoutInflater.inflate(LayoutInflater.java:498)
W/System.err( 9755): 	at android.view.LayoutInflater.inflate(LayoutInflater.java:398)
W/System.err( 9755): 	at com.android.internal.widget.ActionBarView.initTitle(ActionBarView.java:1200)
W/System.err( 9755): 	at com.android.internal.widget.ActionBarView.setDisplayOptions(ActionBarView.java:982)
W/System.err( 9755): 	at com.android.internal.widget.ActionBarView.<init>(ActionBarView.java:398)
W/System.err( 9755): 	... 34 more
W/System.err( 9755): Caused by: java.lang.reflect.InvocationTargetException
W/System.err( 9755): 	at java.lang.reflect.Constructor.constructNative(Native Method)
W/System.err( 9755): 	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
W/System.err( 9755): 	at android.view.LayoutInflater.createView(LayoutInflater.java:600)
W/System.err( 9755): 	... 44 more
W/System.err( 9755): Caused by: java.lang.UnsupportedOperationException: Can't convert to color: type=0x2
W/System.err( 9755): 	at android.content.res.TypedArray.getColor(TypedArray.java:327)
W/System.err( 9755): 	at android.widget.TextView.<init>(TextView.java:1006)
W/System.err( 9755): 	at android.widget.TextView.<init>(TextView.java:911)
W/System.err( 9755): 	... 47 more
F/libc    ( 9755): Fatal signal 11 (SIGSEGV) at 0xdeadcab1 (code=1), thread 9755 (apps.weatherapp)
I/DEBUG   (  115): pid: 9755, tid: 9755, name: apps.weatherapp  >>> com.apps.weatherapp <<<
I/DEBUG   (  115): !@dumpstate -k -t -z -d -o /data/log/dumpstate_app_native -m 9755
D/CrashAnrDetector(  551): pid: 9755, tid: 9755, name: apps.weatherapp  >>> com.apps.weatherapp <<<
I/ActivityManager(  551): Process com.apps.weatherapp (pid 9755) (adj 9) has died.
D/Zygote  (  117): Process 9755 terminated by signal (11)
Process com.apps.weatherapp terminated.

Wow, it looks like you’re being hit by several bugs here. Sorry about that!

  1. So, the good news first: exporting / previewing on Android from Mac definitely “works” in the context of compile and deploy.

  2. However, on your 4.4.2 tablet you’re being hit by the same bug that’s being discussed here.
    This should be fixed in the upcoming release, although it’s been a bit unpredictable when trying to reproduce it. I’ll see if I can get in some additional testing of it.

  3. The issue with android preview on the dashboard sending you to the docs page is really weird.
    Which OS version does this happen with?

Regarding point 2 above, I’ve tested again and it does indeed seem like we managed to fix that issue. The fix will be available as of version 0.36 which we hope to get out on the QA channel early next week.

Great I look forward to it. I really want to transition a lot of my app development over to Fuse…

re #3 above this only happens when I try to preview on android with a mac.