Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

On Screen Button doesn't work in some apps #13

Open
subins2000 opened this issue Jun 11, 2021 · 1 comment
Open

On Screen Button doesn't work in some apps #13

subins2000 opened this issue Jun 11, 2021 · 1 comment

Comments

@subins2000
Copy link
Owner

Doesn't work in these apps :

  • Facebook
  • YouTube comments

When recursively iterating through the nodes that has a getText() attribute, the nodes in these apps return a null for getText() and I have no idea why. There's a similar stackoverflow question on this: https://stackoverflow.com/questions/46932091/reading-text-from-facebook-recyclerview-with-accessibilityservice

Instagram has their own IgTextLayoutView for texts, it's getText() works though, returns the string: https://github.com/dnoise/IG-6.9.1-decompiled/blob/master/src/com/instagram/ui/widget/textview/IgTextLayoutView.java

I also saw a getTextForAccessibility() in it, maybe Facebook and YouTube has these functions too. Will have to explore this.

@vivekkj123
Copy link

It also crashes on Telegram

03-24 18:37:57.443  9063  9063 E MessageQueue-JNI: java.lang.NullPointerException: Attempt to invoke virtual method 'int android.view.accessibility.AccessibilityNodeInfo.getChildCount()' on a null object reference
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at subins2000.manglish.OnScreenOverlay.c(:2)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at c.a.m.onClick(Unknown Source:21)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at c.a.l.onTouch(Unknown Source:76)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at android.view.View.dispatchTouchEvent(View.java:15653)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at android.view.View.dispatchPointerEvent(View.java:15921)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:7090)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:6886)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:6293)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:6350)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:6316)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:6481)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:6324)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:6538)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:6297)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:6350)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:6316)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:6324)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:6297)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:9304)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:9255)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:9219)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:9434)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:268)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at android.os.MessageQueue.nativePollOnce(Native Method)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at android.os.MessageQueue.next(MessageQueue.java:340)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at android.os.Looper.loopOnce(Looper.java:178)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at android.os.Looper.loop(Looper.java:334)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at android.app.ActivityThread.main(ActivityThread.java:8291)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at java.lang.reflect.Method.invoke(Native Method)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:557)
03-24 18:37:57.443  9063  9063 E MessageQueue-JNI:      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:981)
03-24 18:37:57.443  9063  9063 D AndroidRuntime: Shutting down VM
03-24 18:37:57.444  9063  9063 E AndroidRuntime: FATAL EXCEPTION: main
03-24 18:37:57.444  9063  9063 E AndroidRuntime: Process: subins2000.manglish, PID: 9063
03-24 18:37:57.444  9063  9063 E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method 'int android.view.accessibility.AccessibilityNodeInfo.getChildCount()' on a null object reference
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at subins2000.manglish.OnScreenOverlay.c(:2)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at c.a.m.onClick(Unknown Source:21)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at c.a.l.onTouch(Unknown Source:76)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at android.view.View.dispatchTouchEvent(View.java:15653)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at android.view.View.dispatchPointerEvent(View.java:15921)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:7090)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:6886)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:6293)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:6350)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:6316)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:6481)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:6324)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:6538)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:6297)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:6350)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:6316)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:6324)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:6297)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:9304)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:9255)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:9219)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:9434)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:268)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at android.os.MessageQueue.nativePollOnce(Native Method)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at android.os.MessageQueue.next(MessageQueue.java:340)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at android.os.Looper.loopOnce(Looper.java:178)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at android.os.Looper.loop(Looper.java:334)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at android.app.ActivityThread.main(ActivityThread.java:8291)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at java.lang.reflect.Method.invoke(Native Method)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:557)
03-24 18:37:57.444  9063  9063 E AndroidRuntime:        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:981)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants