We are testing CoronaCards for a project. I’ve only tested this on Android, when the following line in our code:
local safeScreenOriginX = display.safeScreenOriginX
causes the built app to crash. We’ve tested this using the modified version of the Fishies sample. This is the error we can capture on adb logcat. See my highlight below. Is this a bug? Is there a workaround?
07-18 14:53:11.520 624 8419 D msm8974_platform: platform_set_channel_map mixer_ctl_name:Playback Channel Map17
07-18 14:53:11.521 624 8419 D msm8974_platform: platform_set_channel_map: set mapping(1 2 0 0 0 0 0 0) for channel:2
07-18 14:53:11.522 624 8419 D audio_hw_primary: start_output_stream: exit
07-18 14:53:11.522 624 8419 W qc_adm : margin check: adm_request_focus_v2§ failed diff -48
07-18 14:53:11.522 624 8419 W qc_adm : margin check: adm_abandon_focus§ failed diff -48
07-18 14:53:11.534 664 664 I SurfaceFlinger: Display 0 HWC layers:
07-18 14:53:11.534 664 664 I SurfaceFlinger: type | handle | flag | format | source crop (l,t,r, B) | frame | name
07-18 14:53:11.534 664 664 I SurfaceFlinger: ------------±-------------±-----±----------±---------------------------±--------------------±-----
07-18 14:53:11.534 664 664 I SurfaceFlinger: Client | 0x7e0deab880 | 0000 | RGBA_8888 | 0.0 213.0 1080.0 1728.0 | 0 365 1080 1855 | com.example.app/com.example.app.MainActivity#0
07-18 14:53:11.534 664 664 I SurfaceFlinger: Client | 0x7e0deab080 | 0000 | RGBA_8888 | 0.0 339.0 72.0 1591.0 | 0 361 1080 810 | StatusBar#0
07-18 14:53:11.534 664 664 I SurfaceFlinger: Client | 0x7e0dc4a300 | 0000 | RGBA_8888 | 0.0 0.0 1080.0 2220.0 | 0 0 1080 2220 | ScreenshotSurface#0
07-18 14:53:11.534 664 664 I SurfaceFlinger: Client | | 0000 | Unknown | -0.4 -0.9 -0.9 -1.0 | 0 0 1080 354 | BlackSurface#0
07-18 14:53:11.534 664 664 I SurfaceFlinger: Client | | 0000 | Unknown | -0.8 -0.0 -1.0 -0.6 | 0 0 221 2220 | BlackSurface#1
07-18 14:53:11.534 664 664 I SurfaceFlinger: Client | | 0000 | Unknown | -0.1 0.0 -0.6 -0.1 | 0 1866 1080 2220 | BlackSurface#1
07-18 14:53:11.534 664 664 I SurfaceFlinger: Client | | 0000 | Unknown | 0.0 -0.4 -0.2 -1.
07-18 14:53:11.534 664 664 I SurfaceFlinger: 0 | 859 0 1080 2220 | BlackSurface#1
07-18 14:53:11.534 664 664 I SurfaceFlinger:
07-18 14:53:11.541 664 664 I SurfaceFlinger: Display 0 HWC layers:
07-18 14:53:11.541 664 664 I SurfaceFlinger: type | handle | flag | format | source crop (l,t,r, B) | frame | name
07-18 14:53:11.541 664 664 I SurfaceFlinger: ------------±-------------±-----±----------±---------------------------±--------------------±-----
07-18 14:53:11.541 664 664 I SurfaceFlinger: Client | 0x7e0deab880 | 0000 | RGBA_8888 | 0.0 0.0 1080.0 1920.0 | 0 133 1080 2074 | com.example.app/com.example.app.MainActivity#0
07-18 14:53:11.541 664 664 I SurfaceFlinger: Client | 0x7e0deab080 | 0000 | RGBA_8888 | 0.0 93.0 72.0 1672.0 | 0 108 1080 1015 | StatusBar#0
07-18 14:53:11.541 664 664 I SurfaceFlinger: Client | 0x7e0df8ff00 | 0000 | RGBA_8888 | 0.0 0.0 779.0 52.0 | 1067 1423 1080 2111 | NavigationBar#0
07-18 14:53:11.541 664 664 I SurfaceFlinger: Client | 0x7e0dc4a300 | 0000 | RGBA_8888 | 0.0 0.0 1080.0 2220.0 | 0 0 1080 2220 | ScreenshotSurface#0
07-18 14:53:11.541 664 664 I SurfaceFlinger: Client | | 0000 | Unknown | -0.4 -0.8 -0.8 -1.0 | 0 0 1080 742 | BlackSurface#0
07-18 14:53:11.541 664 664 I SurfaceFlinger: Client | | 0000 | Unknown | -0.8 -0.0 -1.0 -0.6 | 0 0 394 2220 | BlackSurface#1
07-18 14:53:11.541 664 664 I SurfaceFlinger: Client | | 0000 | Unknown | -0.2 0.0 -0.6 -0
07-18 14:53:11.541 664 664 I SurfaceFlinger: .2 | 0 1478 1080 2220 | BlackSurface#1
07-18 14:53:11.541 664 664 I SurfaceFlinger: Client | | 0000 | Unknown | 0.0 -0.4 -0.2 -1.0 | 686 0 1080 2220 | BlackSurface#1
07-18 14:53:11.541 664 664 I SurfaceFlinger:
07-18 14:53:11.543 963 1461 I AudioMixer: create resampler src 44100, 2, dst 48000, 2, q 8
07-18 14:53:11.543 963 1461 D SoundAliveResampler: [SoundAliveResampler] Init+++
07-18 14:53:11.546 1476 1485 I zygote64: Background concurrent copying GC freed 576950(21MB) AllocSpace objects, 52(1456KB) LOS objects, 30% free, 54MB/78MB, paused 416us total 258.944ms
07-18 14:53:11.555 1476 1498 D WindowManager: set systemUiVisibility : systemUiFlags= 0x8 fullscreenStackSysUiFlags= 0x80000000
07-18 14:53:11.556 1476 3641 D InputDispatcher: Focus left window: 8852
07-18 14:53:11.556 1476 3641 D InputDispatcher: Focus entered window: 8852
07-18 14:53:11.557 8852 8852 D ViewRootImpl@9267140[MainActivity]: setView = DecorView@35fe879[] TM=true MM=false
07-18 14:53:11.564 8852 8852 D ViewRootImpl@9267140[MainActivity]: dispatchAttachedToWindow
07-18 14:53:11.578 8852 8857 I zygote : Do partial code cache collection, code=21KB, data=30KB
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] JNI DETECTED ERROR IN APPLICATION: JNI GetArrayLength called with pending exception java.lang.NullPointerException: Attempt to invoke interface method ‘com.ansca.corona.CoronaStatusBarSettings com.ansca.corona.listeners.CoronaStatusBarApiListener.getStatusBarMode()’ on a null object reference
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] at float[] com.ansca.corona.NativeToJavaBridge.callGetSafeAreaInsetPixels(com.ansca.corona.CoronaRuntime) (NativeToJavaBridge.java:1708)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] at void com.ansca.corona.JavaToNativeShim.nativeResize(long, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, int, int, int, boolean) (JavaToNativeShim.java:-2)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] at void com.ansca.corona.JavaToNativeShim.resize(com.ansca.corona.CoronaRuntime, android.content.Context, int, int, com.ansca.corona.WindowOrientation, boolean) (JavaToNativeShim.java:394)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] at void com.ansca.corona.graphics.opengl.CoronaGLSurfaceView$CoronaRenderer.onSurfaceChanged(javax.microedition.khronos.opengles.GL10, int, int) (CoronaGLSurfaceView.java:382)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] at void com.ansca.corona.graphics.opengl.GLSurfaceView$GLThread.guardedRun() (GLSurfaceView.java:1612)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] at void com.ansca.corona.graphics.opengl.GLSurfaceView$GLThread.run() (GLSurfaceView.java:1378)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504]
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] in call to GetArrayLength
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] from void com.ansca.corona.JavaToNativeShim.nativeResize(long, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, int, int, int, boolean)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] “GLThread 3485” prio=5 tid=14 Runnable
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] | group=“main” sCount=0 dsCount=0 flags=0 obj=0x13c01ce8 self=0xd6f7c600
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] | sysTid=8913 nice=0 cgrp=default sched=0/0 handle=0xca881970
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] | state=R schedstat=( 161520105 56681193 150 ) utm=14 stm=2 core=6 HZ=100
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] | stack=0xca77f000-0xca781000 stackSize=1038KB
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] | held mutexes= “mutator lock”(shared held)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #00 pc 002c521f /system/lib/libart.so (_ZN3art15DumpNativeStackERNSt3__113basic_ostreamIcNS0_11char_traitsIcEEEEiP12BacktraceMapPKcPNS_9ArtMethodEPv+130)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #01 pc 00356cd1 /system/lib/libart.so (_ZNK3art6Thread9DumpStackERNSt3__113basic_ostreamIcNS1_11char_traitsIcEEEEbP12BacktraceMapb+200)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #02 pc 003531a3 /system/lib/libart.so (_ZNK3art6Thread4DumpERNSt3__113basic_ostreamIcNS1_11char_traitsIcEEEEbP12BacktraceMapb+34)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #03 pc 002306cd /system/lib/libart.so (_ZN3art9JavaVMExt8JniAbortEPKcS2_+736)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #04 pc 00230ac3 /system/lib/libart.so (_ZN3art9JavaVMExt9JniAbortVEPKcS2_St9__va_list+58)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #05 pc 000d2caf /system/lib/libart.so (_ZN3art11ScopedCheck6AbortFEPKcz+46)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #06 pc 000d2847 /system/lib/libart.so (_ZN3art11ScopedCheck11CheckThreadEP7_JNIEnv+354)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #07 pc 000d1045 /system/lib/libart.so (_ZN3art11ScopedCheck5CheckERNS_18ScopedObjectAccessEbPKcPNS_12JniValueTypeE+604)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #08 pc 000ca167 /system/lib/libart.so (_ZN3art8CheckJNI14GetArrayLengthEP7_JNIEnvP7_jarray+450)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #09 pc 0003293c /data/app/com.example.app-uRP_Ng6YEhHOcAARpV3vQQ==/lib/arm/libcorona.so (???)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #10 pc 000a951c /data/app/com.example.app-uRP_Ng6YEhHOcAARpV3vQQ==/lib/arm/libcorona.so (???)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #11 pc 0000cc1c /data/app/com.example.app-uRP_Ng6YEhHOcAARpV3vQQ==/lib/arm/liblua.so (???)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #12 pc 0001ce30 /data/app/com.example.app-uRP_Ng6YEhHOcAARpV3vQQ==/lib/arm/liblua.so (???)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #13 pc 0000d068 /data/app/com.example.app-uRP_Ng6YEhHOcAARpV3vQQ==/lib/arm/liblua.so (???)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #14 pc 0001b7c0 /data/app/com.example.app-uRP_Ng6YEhHOcAARpV3vQQ==/lib/arm/liblua.so (???)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #15 pc 0001bd58 /data/app/com.example.app-uRP_Ng6YEhHOcAARpV3vQQ==/lib/arm/liblua.so (???)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #16 pc 0001d050 /data/app/com.example.app-uRP_Ng6YEhHOcAARpV3vQQ==/lib/arm/liblua.so (???)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #17 pc 0000d068 /data/app/com.example.app-uRP_Ng6YEhHOcAARpV3vQQ==/lib/arm/liblua.so (???)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #18 pc 0000c374 /data/app/com.example.app-uRP_Ng6YEhHOcAARpV3vQQ==/lib/arm/liblua.so (???)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #19 pc 0000d1e0 /data/app/com.example.app-uRP_Ng6YEhHOcAARpV3vQQ==/lib/arm/liblua.so (???)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #20 pc 000055b8 /data/app/com.example.app-uRP_Ng6YEhHOcAARpV3vQQ==/lib/arm/liblua.so (lua_pcall+88)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #21 pc 00107ac4 /data/app/com.example.app-uRP_Ng6YEhHOcAARpV3vQQ==/lib/arm/libcorona.so (???)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #22 pc 00140cb0 /data/app/com.example.app-uRP_Ng6YEhHOcAARpV3vQQ==/lib/arm/libcorona.so (???)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #23 pc 00142d30 /data/app/com.example.app-uRP_Ng6YEhHOcAARpV3vQQ==/lib/arm/libcorona.so (???)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #24 pc 001411a0 /data/app/com.example.app-uRP_Ng6YEhHOcAARpV3vQQ==/lib/arm/libcorona.so (???)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #25 pc 00141f5c /data/app/com.example.app-uRP_Ng6YEhHOcAARpV3vQQ==/lib/arm/libcorona.so (???)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #26 pc 0002bdc8 /data/app/com.example.app-uRP_Ng6YEhHOcAARpV3vQQ==/lib/arm/libcorona.so (???)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] native: #27 pc 0000250f /data/app/com.example.app-uRP_Ng6YEhHOcAARpV3vQQ==/oat/arm/base.odex (Java_com_ansca_corona_JavaToNativeShim_nativeResize__JLjava_lang_String_2Ljava_lang_String_2Ljava_lang_String_2Ljava_lang_String_2Ljava_lang_String_2Ljava_lang_String_2Ljava_lang_String_2IIIZ+318)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] at com.ansca.corona.JavaToNativeShim.nativeResize(Native method)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] at com.ansca.corona.JavaToNativeShim.resize(JavaToNativeShim.java:394)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] at com.ansca.corona.graphics.opengl.CoronaGLSurfaceView$CoronaRenderer.onSurfaceChanged(CoronaGLSurfaceView.java:382)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] at com.ansca.corona.graphics.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1612)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504] at com.ansca.corona.graphics.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1378)
07-18 14:53:11.582 8852 8913 F zygote : java_vm_ext.cc:504]
07-18 14:53:11.582 8852 8857 I zygote : After code cache collection, code=20KB, data=29KB
07-18 14:53:11.582 8852 8857 I zygote : Increasing code cache capacity to 128KB
07-18 14:53:11.602 1476 5888 V WindowManager: Relayout Window{b259d2c u0 com.example.app/com.example.app.MainActivity}: viewVisibility=0 req=1248x567 WM.LayoutParams{(0,0)(wrapxwrap) gr=#11 sim=#120 ty=2 fl=#1820002 pfl=0x1000000 fmt=-3 wanim=0x10302fe vsysui=0x10 surfaceInsets=Rect(96, 96 - 96, 96) needsMenuKey=2 colorMode=0 naviIconColor=0}
07-18 14:53:11.609 664 664 D SurfaceFlinger: duplicate layer name: changing com.example.app/com.example.app.MainActivity to com.example.app/com.example.app.MainActivity#1
07-18 14:53:11.609 664 664 I SurfaceFlinger: id=2884 createSurf (1440x759),1 flag=4, com.example.app/com.example.app.MainActivity#1
07-18 14:53:11.610 1476 5888 V Surface : sf_framedrop debug : 0x4f4c, game : true, logging : 0
07-18 14:53:11.614 1476 3641 D WindowManager: adjustSystemUiVisibilityLw : vis= 0x8
07-18 14:53:11.615 1476 1497 D GamePkgDataHelper: getGamePkgData(). com.example.app
Test code, which is a slightly modified version of the Fishies sample is attached.
https://www.dropbox.com/s/z6pidg0zjqs7zmp/sample-android-ChildView-master.zip?dl=0