Title: android-elevation property crashes on Android 5.0 devices · Issue #7532 · NativeScript/NativeScript · GitHub
Open Graph Title: android-elevation property crashes on Android 5.0 devices · Issue #7532 · NativeScript/NativeScript
X Title: android-elevation property crashes on Android 5.0 devices · Issue #7532 · NativeScript/NativeScript
Description: Environment CLI: 5.4.2 Cross-platform modules: 5.4.3 Android Runtime: 5.4.0 Describe the bug With recently added CSS property, android-elevation and android-dynamic-elevation-offset, an Android 5.0.2 (Lollipop) device crashes on app star...
Open Graph Description: Environment CLI: 5.4.2 Cross-platform modules: 5.4.3 Android Runtime: 5.4.0 Describe the bug With recently added CSS property, android-elevation and android-dynamic-elevation-offset, an Android 5.0...
X Description: Environment CLI: 5.4.2 Cross-platform modules: 5.4.3 Android Runtime: 5.4.0 Describe the bug With recently added CSS property, android-elevation and android-dynamic-elevation-offset, an Android 5.0...
Opengraph URL: https://github.com/NativeScript/NativeScript/issues/7532
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"android-elevation property crashes on Android 5.0 devices","articleBody":"**Environment**\r\n\r\n - CLI: 5.4.2\r\n - Cross-platform modules: 5.4.3\r\n - Android Runtime: 5.4.0\r\n\r\n**Describe the bug**\r\nWith recently added CSS property, android-elevation and android-dynamic-elevation-offset, an Android 5.0.2 (Lollipop) device crashes on app startup. The same app seems runs correctly on devices after Android 6.0. (we tested Android 6.0 and Android 9.0). And even on Android 5.1.1 device, the app works without crash. So we assume that there are some issues regarding to setting elevation on only Android 5.0.\r\n\r\n**To Reproduce**\r\nJust add following style to the Button element.\r\n\r\n```css\r\nButton {\r\n\tbackground-color: transparent;\r\n\tmargin: 0 0;\r\n\tpadding: 0 0;\r\n\tandroid-elevation: 0;\r\n\tandroid-dynamic-elevation-offset: 0;\r\n}\r\n```\r\n\r\n**Expected behavior**\r\nNo crash.\r\n\r\n**Crash log**\r\n\r\n```\r\n07-17 12:23:38.146 27527-27527/? A/art: art/runtime/check_jni.cc:65] JNI DETECTED ERROR IN APPLICATION: can't call void android.view.View.setTranslationZ(float) on null object\r\n07-17 12:23:38.146 27527-27527/? A/art: art/runtime/check_jni.cc:65] in call to CallVoidMethodV\r\n07-17 12:23:38.146 27527-27527/? A/art: art/runtime/check_jni.cc:65] from void android.animation.PropertyValuesHolder.nCallFloatMethod(java.lang.Object, long, float)\r\n07-17 12:23:38.146 27527-27527/? A/art: art/runtime/check_jni.cc:65] \"main\" prio=5 tid=1 Runnable\r\n07-17 12:23:38.146 27527-27527/? A/art: art/runtime/check_jni.cc:65] | group=\"main\" sCount=0 dsCount=0 obj=0x73e69000 self=0xb5007800\r\n07-17 12:23:38.146 27527-27527/? A/art: art/runtime/check_jni.cc:65] | sysTid=27527 nice=0 cgrp=apps sched=0/0 handle=0xb6f49ec8\r\n07-17 12:23:38.146 27527-27527/? A/art: art/runtime/check_jni.cc:65] | state=R schedstat=( 19977186121 3784867579 13162 ) utm=1936 stm=61 core=3 HZ=100\r\n07-17 12:23:38.146 27527-27527/? A/art: art/runtime/check_jni.cc:65] | stack=0xbe41c000-0xbe41e000 stackSize=8MB\r\n07-17 12:23:38.146 27527-27527/? A/art: art/runtime/check_jni.cc:65] | held mutexes= \"mutator lock\"(shared held)\r\n07-17 12:23:38.146 27527-27527/? A/art: art/runtime/check_jni.cc:65] native: #00 pc 00004640 /system/lib/libbacktrace_libc++.so (UnwindCurrent::Unwind(unsigned int, ucontext*)+23)\r\n07-17 12:23:38.146 27527-27527/? A/art: art/runtime/check_jni.cc:65] native: #01 pc 00002e8d /system/lib/libbacktrace_libc++.so (Backtrace::Unwind(unsigned int, ucontext*)+8)\r\n07-17 12:23:38.146 27527-27527/? A/art: art/runtime/check_jni.cc:65] native: #02 pc 0023f37f /system/lib/libart.so (art::DumpNativeStack(std::__1::basic_ostream\u003cchar, std::__1::char_traits\u003cchar\u003e \u003e\u0026, int, char const*, art::mirror::ArtMethod*, BacktraceMap*)+70)\r\n07-17 12:23:38.146 27527-27527/? A/art: art/runtime/check_jni.cc:65] native: #03 pc 00224b23 /system/lib/libart.so (art::Thread::Dump(std::__1::basic_ostream\u003cchar, std::__1::char_traits\u003cchar\u003e \u003e\u0026, BacktraceMap*) const+154)\r\n07-17 12:23:38.146 27527-27527/? A/art: art/runtime/check_jni.cc:65] native: #04 pc 000afb7d /system/lib/libart.so (art::JniAbort(char const*, char const*)+584)\r\n07-17 12:23:38.151 27527-27527/? A/art: art/runtime/check_jni.cc:65] native: #05 pc 000b02b5 /system/lib/libart.so (art::JniAbortF(char const*, char const*, ...)+60)\r\n07-17 12:23:38.151 27527-27527/? A/art: art/runtime/check_jni.cc:65] native: #06 pc 000b0ce7 /system/lib/libart.so (art::ScopedCheck::CheckVirtualMethod(_jobject*, _jmethodID*)+418)\r\n07-17 12:23:38.151 27527-27527/? A/art: art/runtime/check_jni.cc:65] native: #07 pc 000ba8b7 /system/lib/libart.so (art::CheckJNI::CallVoidMethodV(_JNIEnv*, _jobject*, _jmethodID*, std::__va_list)+70)\r\n07-17 12:23:38.151 27527-27527/? A/art: art/runtime/check_jni.cc:65] native: #08 pc 0005d27f /system/lib/libandroid_runtime.so (???)\r\n07-17 12:23:38.151 27527-27527/? A/art: art/runtime/check_jni.cc:65] native: #09 pc 000718e5 /system/framework/arm/boot.oat (Java_android_animation_PropertyValuesHolder_nCallFloatMethod__Ljava_lang_Object_2JF+132)\r\n07-17 12:23:38.151 27527-27527/? A/art: art/runtime/check_jni.cc:65] at android.animation.PropertyValuesHolder.nCallFloatMethod(Native method)\r\n07-17 12:23:38.151 27527-27527/? A/art: art/runtime/check_jni.cc:65] at android.animation.PropertyValuesHolder.access$400(PropertyValuesHolder.java:38)\r\n07-17 12:23:38.151 27527-27527/? A/art: art/runtime/check_jni.cc:65] at android.animation.PropertyValuesHolder$FloatPropertyValuesHolder.setAnimatedValue(PropertyValuesHolder.java:1296)\r\n07-17 12:23:38.151 27527-27527/? A/art: art/runtime/check_jni.cc:65] at android.animation.ObjectAnimator.animateValue(ObjectAnimator.java:952)\r\n07-17 12:23:38.151 27527-27527/? A/art: art/runtime/check_jni.cc:65] at android.animation.ValueAnimator.animationFrame(ValueAnimator.java:1207)\r\n07-17 12:23:38.151 27527-27527/? A/art: art/runtime/check_jni.cc:65] at android.animation.ValueAnimator.doAnimationFrame(ValueAnimator.java:1248)\r\n07-17 12:23:38.151 27527-27527/? A/art: art/runtime/check_jni.cc:65] at android.animation.ValueAnimator$AnimationHandler.doAnimationFrame(ValueAnimator.java:659)\r\n07-17 12:23:38.151 27527-27527/? A/art: art/runtime/check_jni.cc:65] at android.animation.ValueAnimator$AnimationHandler.run(ValueAnimator.java:682)\r\n07-17 12:23:38.151 27527-27527/? A/art: art/runtime/check_jni.cc:65] at android.view.Choreographer$CallbackRecord.run(Choreographer.java:767)\r\n07-17 12:23:38.151 27527-27527/? A/art: art/runtime/check_jni.cc:65] at android.view.Choreographer.doCallbacks(Choreographer.java:580)\r\n07-17 12:23:38.151 27527-27527/? A/art: art/runtime/check_jni.cc:65] at android.view.Choreographer.doFrame(Choreographer.java:549)\r\n07-17 12:23:38.151 27527-27527/? A/art: art/runtime/check_jni.cc:65] at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:753)\r\n07-17 12:23:38.151 27527-27527/? A/art: art/runtime/check_jni.cc:65] at android.os.Handler.handleCallback(Handler.java:739)\r\n07-17 12:23:38.151 27527-27527/? A/art: art/runtime/check_jni.cc:65] at android.os.Handler.dispatchMessage(Handler.java:95)\r\n07-17 12:23:38.151 27527-27527/? A/art: art/runtime/check_jni.cc:65] at android.os.Looper.loop(Looper.java:211)\r\n07-17 12:23:38.151 27527-27527/? A/art: art/runtime/check_jni.cc:65] at android.app.ActivityThread.main(ActivityThread.java:5335)\r\n07-17 12:23:38.151 27527-27527/? A/art: art/runtime/check_jni.cc:65] at java.lang.reflect.Method.invoke!(Native method)\r\n07-17 12:23:38.151 27527-27527/? A/art: art/runtime/check_jni.cc:65] at java.lang.reflect.Method.invoke(Method.java:372)\r\n07-17 12:23:38.151 27527-27527/? A/art: art/runtime/check_jni.cc:65] at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1016)\r\n07-17 12:23:38.151 27527-27527/? A/art: art/runtime/check_jni.cc:65] at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:811)\r\n07-17 12:23:38.151 27527-27527/? A/art: art/runtime/check_jni.cc:65] \r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] Runtime aborting...\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] Aborting thread:\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] \"main\" prio=5 tid=1 Native\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] | group=\"\" sCount=0 dsCount=0 obj=0x73e69000 self=0xb5007800\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] | sysTid=27527 nice=0 cgrp=apps sched=0/0 handle=0xb6f49ec8\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] | state=R schedstat=( 20005584092 3793574136 13227 ) utm=1938 stm=62 core=2 HZ=100\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] | stack=0xbe41c000-0xbe41e000 stackSize=8MB\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] | held mutexes= \"abort lock\" \"mutator lock\"(shared held)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] native: #00 pc 00004640 /system/lib/libbacktrace_libc++.so (UnwindCurrent::Unwind(unsigned int, ucontext*)+23)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] native: #01 pc 00002e8d /system/lib/libbacktrace_libc++.so (Backtrace::Unwind(unsigned int, ucontext*)+8)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] native: #02 pc 0023f37f /system/lib/libart.so (art::DumpNativeStack(std::__1::basic_ostream\u003cchar, std::__1::char_traits\u003cchar\u003e \u003e\u0026, int, char const*, art::mirror::ArtMethod*, BacktraceMap*)+70)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] native: #03 pc 00224b23 /system/lib/libart.so (art::Thread::Dump(std::__1::basic_ostream\u003cchar, std::__1::char_traits\u003cchar\u003e \u003e\u0026, BacktraceMap*) const+154)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] native: #04 pc 00214da5 /system/lib/libart.so (art::AbortState::DumpThread(std::__1::basic_ostream\u003cchar, std::__1::char_traits\u003cchar\u003e \u003e\u0026, art::Thread*)+24)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] native: #05 pc 00215055 /system/lib/libart.so (art::AbortState::Dump(std::__1::basic_ostream\u003cchar, std::__1::char_traits\u003cchar\u003e \u003e\u0026)+436)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] native: #06 pc 00215229 /system/lib/libart.so (art::Runtime::Abort()+72)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] native: #07 pc 000a65bb /system/lib/libart.so (art::LogMessage::~LogMessage()+1322)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] native: #08 pc 000afd5b /system/lib/libart.so (art::JniAbort(char const*, char const*)+1062)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] native: #09 pc 000b02b5 /system/lib/libart.so (art::JniAbortF(char const*, char const*, ...)+60)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] native: #10 pc 000b0ce7 /system/lib/libart.so (art::ScopedCheck::CheckVirtualMethod(_jobject*, _jmethodID*)+418)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] native: #11 pc 000ba8b7 /system/lib/libart.so (art::CheckJNI::CallVoidMethodV(_JNIEnv*, _jobject*, _jmethodID*, std::__va_list)+70)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] native: #12 pc 0005d27f /system/lib/libandroid_runtime.so (???)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] native: #13 pc 000718e5 /system/framework/arm/boot.oat (Java_android_animation_PropertyValuesHolder_nCallFloatMethod__Ljava_lang_Object_2JF+132)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] at android.animation.PropertyValuesHolder.nCallFloatMethod(Native method)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] at android.animation.PropertyValuesHolder.access$400(PropertyValuesHolder.java:38)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] at android.animation.PropertyValuesHolder$FloatPropertyValuesHolder.setAnimatedValue(PropertyValuesHolder.java:1296)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] at android.animation.ObjectAnimator.animateValue(ObjectAnimator.java:952)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] at android.animation.ValueAnimator.animationFrame(ValueAnimator.java:1207)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] at android.animation.ValueAnimator.doAnimationFrame(ValueAnimator.java:1248)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] at android.animation.ValueAnimator$AnimationHandler.doAnimationFrame(ValueAnimator.java:659)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] at android.animation.ValueAnimator$AnimationHandler.run(ValueAnimator.java:682)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] at android.view.Choreographer$CallbackRecord.run(Choreographer.java:767)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] at android.view.Choreographer.doCallbacks(Choreographer.java:580)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] at android.view.Choreographer.doFrame(Choreographer.java:549)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:753)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] at android.os.Handler.handleCallback(Handler.java:739)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] at android.os.Handler.dispatchMessage(Handler.java:95)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] at android.os.Looper.loop(Looper.java:211)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] at android.app.ActivityThread.main(ActivityThread.java:5335)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] at java.lang.reflect.Method.invoke!(Native method)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] at java.lang.reflect.Method.invoke(Method.java:372)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1016)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:811)\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] Dumping all threads without appropriate locks held: thread list lock mutator lock\r\n07-17 12:23:38.170 27527-27527/? A/art: art/runtime/runtime.cc:290] \r\n07-17 12:23:38.170 27527-27527/? A/libc: Fatal signal 6 (SIGABRT), code -6 in tid 27527 (te.app.xz.local)\r\n```\r\n\r\n[Test Result]\r\nXperia Z3 SO-01G, Android 5.0.2 ==\u003e CRASH\r\nHTC Nexus 9, Android 5.0 =\u003e CRASH\r\n\r\nXperia Z5 SOV32, Android 5.1.1 =\u003e Works\r\nXperia Z5 Premium SO-03H, Android 6.0 =\u003e Works\r\nGoogle Pixel 3, Android 9 =\u003e Works\r\n","author":{"url":"https://github.com/hosikiti","@type":"Person","name":"hosikiti"},"datePublished":"2019-07-17T03:40:22.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":4},"url":"https://github.com/7532/NativeScript/issues/7532"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:7ec88a89-5595-770d-c5de-8865a2085a64 |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | B7E4:2F9F8B:148C55C:1AD8A0A:69743905 |
| html-safe-nonce | 622c176521b799f0c56d8b2e4ebfbea43f51e01f4e3f7272542203b85e547d26 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJCN0U0OjJGOUY4QjoxNDhDNTVDOjFBRDhBMEE6Njk3NDM5MDUiLCJ2aXNpdG9yX2lkIjoiNzI2Njg0MjQwODk3MDg5MzU3MyIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | 8345a4228ae018f0ccd7e8d231a489998d6973f8035d19ef402e1dd4d917808a |
| hovercard-subject-tag | issue:468969498 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/NativeScript/NativeScript/7532/issue_layout |
| twitter:image | https://opengraph.githubassets.com/5fe3f1ced44b89021c5a8229036d652482eb471fd6a7fc319581e044f7b27bc3/NativeScript/NativeScript/issues/7532 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/5fe3f1ced44b89021c5a8229036d652482eb471fd6a7fc319581e044f7b27bc3/NativeScript/NativeScript/issues/7532 |
| og:image:alt | Environment CLI: 5.4.2 Cross-platform modules: 5.4.3 Android Runtime: 5.4.0 Describe the bug With recently added CSS property, android-elevation and android-dynamic-elevation-offset, an Android 5.0... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | hosikiti |
| hostname | github.com |
| expected-hostname | github.com |
| None | e0b95d743b7672c9ac0e1032d5f117950182dc164a83434a7db86510e8f0b37c |
| turbo-cache-control | no-preview |
| go-import | github.com/NativeScript/NativeScript git https://github.com/NativeScript/NativeScript.git |
| octolytics-dimension-user_id | 7392261 |
| octolytics-dimension-user_login | NativeScript |
| octolytics-dimension-repository_id | 31492490 |
| octolytics-dimension-repository_nwo | NativeScript/NativeScript |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 31492490 |
| octolytics-dimension-repository_network_root_nwo | NativeScript/NativeScript |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 56fe7e2e8de6e57740bca50402351ea656f7a4bf |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width