revanced-patches
revanced-patches copied to clipboard
feat(YouTube): Support version `19.09.38`
19.12.41
has an issue, where opening YT from a weblink causes an odd crash.
Maybe swipe controls is causing it, but it might be a YT bug.
19.11.43
does not have the issue, so going to remove 19.12
support (nothing appears to be different anyways).
System.err: azkx: The exception was not handled due to missing onError handler in the subscribe() method call. Further reading: https://github.com/ReactiveX/RxJava/wiki/Error-Handling | java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.Class java.lang.Object.getClass()' on a null object reference
System.err: at azme.a(PG:5)
System.err: at aznd.c(PG:14)
System.err: at aznd.wd(PG:26)
System.err: at balr.c(PG:22)
System.err: at bamr.wk(PG:7)
System.err: at bamr.b(PG:55)
System.err: at bams.wd(PG:36)
System.err: at kpo.h(PG:9)
System.err: at kuz.qG(PG:11)
System.err: at afxe.d(PG:98)
System.err: at afww.i(PG:400)
System.err: at afww.a(PG:33)
System.err: at afww.b(PG:5)
System.err: at kuz.qF(PG:37)
System.err: at gxc.qF(PG:27)
System.err: at xot.d(PG:70)
System.err: at xou.onTouch(PG:60)
System.err: at kyc.onTouch(PG:18)
System.err: at android.view.View.dispatchTouchEvent(View.java:16208)
System.err: at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3318)
System.err: at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2982)
System.err: at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3324)
System.err: at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2998)
System.err: at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3324)
System.err: at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2998)
System.err: at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3324)
System.err: at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2998)
System.err: at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3324)
System.err: at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2998)
System.err: at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3324)
System.err: at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2998)
System.err: at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3324)
System.err: at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2998)
System.err: at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3324)
System.err: at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2998)
System.err: at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3324)
System.err: at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2998)
System.err: at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3324)
System.err: at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2998)
System.err: at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3324)
System.err: at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2998)
System.err: at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3324)
System.err: at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2998)
System.err: at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3324)
System.err: at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2998)
System.err: at com.android.internal.policy.DecorView.superDispatchTouchEvent(DecorView.java:776)
System.err: at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1967)
System.err: at android.app.Activity.dispatchTouchEvent(Activity.java:4531)
System.err: at app.revanced.integrations.youtube.swipecontrols.SwipeControlsHostActivity.dispatchTouchEvent(SwipeControlsHostActivity.kt:86)
System.err: at com.google.android.apps.youtube.app.watchwhile.MainActivity.u(PG:1)
System.err: at nhm.n(PG:3)
System.err: at nhl.n(PG:121)
System.err: at com.google.android.apps.youtube.app.watchwhile.MainActivity.dispatchTouchEvent(PG:5)
System.err: at in.dispatchTouchEvent(PG:3)
System.err: at com.android.internal.policy.DecorView.dispatchTouchEvent(DecorView.java:734)
System.err: at android.view.View.dispatchPointerEvent(View.java:16476)
System.err: at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:8482)
System.err: at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:8233)
System.err: at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:7562)
System.err: at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:7619)
System.err: at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:7585)
System.err: at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:7788)
System.err: at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:7593)
System.err: at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:7845)
System.err: at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:7566)
System.err: at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:7619)
System.err: at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:7585)
System.err: at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:7593)
System.err: at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:7566)
System.err: at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:11103)
System.err: at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:10985)
System.err: at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:10941)
System.err: at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:11237)
System.err: at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:296)
System.err: at android.os.MessageQueue.nativePollOnce(Native Method)
System.err: at android.os.MessageQueue.next(MessageQueue.java:335)
System.err: at android.os.Looper.loopOnce(Looper.java:187)
System.err: at android.os.Looper.loop(Looper.java:319)
System.err: at android.app.ActivityThread.main(ActivityThread.java:8893)
System.err: at java.lang.reflect.Method.invoke(Native Method)
System.err: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:608)
System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1103)
System.err: Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.Class java.lang.Object.getClass()' on a null object reference
System.err: at hhz.k(PG:1)
System.err: at kuz.G(PG:779)
System.err: at mxb.a(PG:9)
System.err: at dkh.g(PG:8)
System.err: at kvn.f(PG:29)
System.err: at gxg.qS(PG:3)
System.err: at gxx.qS(PG:1)
System.err: at kvl.F(PG:91)
System.err: at kvl.w(PG:9)
System.err: at kpl.a(PG:195)
System.err: at aznd.wd(PG:9)
System.err: ... 79 more
It might be best to wait to merge this PR, or maybe merge the patch changes but don't increment the compatibility version numbers. Too much is going on right now to mess with new issues from YT updates that don't appear to change anything.
The recent versions of YT have been flaky and a lot is changing, I think updating could wait a bit.
For now, this PR only adds 19.09.38
(up from 19.09.37
)
This is not because the Swipe controls
patch is unstable.
The reason why stacktrace outputs the class app.revanced.integrations.youtube.swipecontrols.SwipeControlsHostActivity
is simply because the Swipe controls
patch changes the SuperClass of the MainActivity
class to the SwipeControlsHostActivity
class.
In other words, this is not an exception thrown by the SwipeControlsHostActivity
class, it's just an exception in the MainActivity
class.
Some notable points from this crash log include:
System.err: Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.Class java.lang.Object.getClass()' on a null object reference
System.err: at hhz.k(PG:1)
System.err: at kuz.G(PG:779)
This is the first exception thrown in the 'G' method of the 'kuz' class.
In YouTube v19.12.41, the 'G' method of the 'kuz' class handles the YouTube player button.
Hide autoplay button
patch is probably the cause of the crash.
It is likely that some offsets have changed and the patch fails due to that. I remember it using offsets.
During patching no exceptions were thrown, and the patched app launches and works correctly for the brief time I used it. It only crashes when opening web links.
19.11 and lower did not have the issue.
19.13 is still beta, but it has even more changes and a few fingerprints no longer resolve.
19.13 is still beta, but it has even more changes and a few fingerprints no longer resolve.
19.13.36 was released into stable channel in April 3.
P.S: Anyway... autoplay button code is indeed changed starting from 19.13.xx (it doesn't support the old way to add it in layout anymore). I have already modified the old patch to make it compatible.
And with 19.13
the minimized playback code was changed.
This PR is working ok with 19.11.43
and I've had no problems with it. Can modify this PR to add 19.10 and 19.11 and handle 19.13+ at a later time.
And with '19.13' the minimized playback code was changed.
This PR is working ok with '19.11.43' and I've had no problems with it. Can modify this PR to add 19.10 and 19.11 and handle 19.13+ at a later time.
This Version (some weeks ago) broke all patches on my patcher, due to a weird debug lines adding by Google on many parts of the smali code (I'm talking about 3 debug lines per instruction).
Never seen something like that.
i am on 19.11.43
from march whithout this PR and i had no problem
I think adding 19.10 and 19.11 is now ok. I've been using it and it has no obvious issues (no fingerprints changes were needed either).
I think this is ok to merge.
And maybe merge dev to main soon?
Sounds good, I'd like to review the PR first, bare with me