question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Multi touch broken on Android

See original GitHub issue

I am using a PanResponder attached to a <G> element (but I also tried to attach it directly to a <Path> element - same result).

When I use more than one finger, the app crashes on Android (works perfectly fine on iOS). Here is the crash report:

--------- beginning of crash 08-15 11:32:23.383 1363-1363/com.zazzle E/AndroidRuntime: FATAL EXCEPTION: main Process: com.zazzle, PID: 1363 com.facebook.react.bridge.AssertionException: Gesture start time must be initialized at com.facebook.react.bridge.SoftAssertions.assertCondition(SoftAssertions.java:37) at com.facebook.react.uimanager.events.TouchEvent.init(TouchEvent.java:81) at com.facebook.react.uimanager.events.TouchEvent.obtain(TouchEvent.java:49) at com.horcrux.svg.SvgView.dispatch(SvgView.java:124) at com.horcrux.svg.SvgView.handleTouchEvent(SvgView.java:149) at com.horcrux.svg.SvgView.dispatchTouchEvent(SvgView.java:92) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2632) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2321) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2632) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2321) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2632) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2321) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2632) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2321) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2632) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2321) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2632) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2321) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2632) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2321) at com.android.internal.policy.DecorView.superDispatchTouchEvent(DecorView.java:414) at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1808) at android.app.Activity.dispatchTouchEvent(Activity.java:3064) at android.support.v7.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:67) at com.android.internal.policy.DecorView.dispatchTouchEvent(DecorView.java:376) at android.view.View.dispatchPointerEvent(View.java:10243) at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:4438) at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:4306) at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3853) at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3906) at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3872) at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:3999) at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3880) at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:4056) at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3853) at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3906) at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3872) at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3880) at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3853) at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:6247) at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:6221) at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:6182) at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:6350) at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:185) at android.view.InputEventReceiver.nativeConsumeBatchedInputEvents(Native Method) at android.view.InputEventReceiver.consumeBatchedInputEvents(InputEventReceiver.java:176) at android.view.ViewRootImpl.doConsumeBatchedInput(ViewRootImpl.java:6321) at android.view.ViewRootImpl$ConsumeBatchedInputRunnable.run(ViewRootImpl.java:6373) at android.view.Choreographer$CallbackRecord.run(Choreographer.java:874) at android.view.Choreographer.doCallbacks(Choreographer.java:686) at android.view.Choreographer.doFrame(Choreographer.java:615) 08-15 11:32:23.384 1363-1363/com.zazzle E/AndroidRuntime: at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:860) at android.os.Handler.handleCallback(Handler.java:751) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:154) at android.app.ActivityThread.main(ActivityThread.java:6121) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:889) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:779)

Issue Analytics

  • State:closed
  • Created 6 years ago
  • Comments:8 (1 by maintainers)

github_iconTop GitHub Comments

3reactions
psivanovcommented, Aug 16, 2017

I think I fixed the issue. Will submit a PR soon.

mGestureStartTime = TouchEvent.UNSET; should not be set on MotionEvent.ACTION_POINTER_UP, but rather on MotionEvent.ACTION_UP

1reaction
ScrimpyCatcommented, Aug 30, 2017

Experienced the same issue and the pull request fixes it for me as well.

Read more comments on GitHub >

github_iconTop Results From Across the Web

How to Fix Touchscreen Problems on Android - Beebom
1. Check RAM Usage · 2. Enable GPU 2D Rendering · 3. Turn Off Ambient Display · 4. Calibrate the display · 5....
Read more >
How to fix Pixel 4a multi-touch bug? : r/GooglePixel - Reddit
Long story short, make sure you are not touching the screen while restarting or waking it up, otherwise power off the screen and...
Read more >
Android Touchscreen Not Working? 7 Tips, Fixes, and ...
Is your Android device's touchscreen not working? Here are several tips to fix a broken touchscreen or work around it.
Read more >
10 Quick Ways to Fix Touchscreen of Android Phone
Fixing the Android Touch Screen · Restart Android Device · Safe Mode · Check Memory Usage · Turn On GPU rendering · Test...
Read more >
What are the solutions for multi-touch issues that are ... - Quora
1.Restart your device before playing heavy games · 2.Close all background app · 3.Delete all so called Ram cleaner apps because they don't...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found