Compare commits

..

24 Commits

Author SHA1 Message Date
semantic-release-bot
6f4729f317 chore(release): 2.166.0-dev.1 [skip ci]
# [2.166.0-dev.1](https://github.com/revanced/revanced-patches/compare/v2.165.0...v2.166.0-dev.1) (2023-03-14)

### Bug Fixes

* **backdrops/pro-unlock:** constrain to most recent working app version ([#1677](https://github.com/revanced/revanced-patches/issues/1677)) ([5a65668](5a65668892))
* **instagram/hide-timeline-ads:** fix compatibility with newer versions ([#1672](https://github.com/revanced/revanced-patches/issues/1672)) ([d6d7aca](d6d7acafb2))
* **twitch:** misspelling annotations ([2939856](2939856bbc))
* **youtube/general-ads:** remove duplicate preference ([d876096](d8760969f7))
* **youtube/return-youtube-dislike:** add missing strings ([bf8f74f](bf8f74f5bf))
* **youtube/spoof-signature-verification:** use correct fingerprint ([e36902a](e36902a530))

### Features

* **myexpenses/unlock-pro:** constrain to last working version ([452a922](452a92287f))
* **reddit:** add more compatibility constraints ([2140ac2](2140ac2a6b))
* **reddit:** bump compatibility to `2023.09.1` ([#1729](https://github.com/revanced/revanced-patches/issues/1729)) ([d9526a9](d9526a95de))
* **twitch:** constraint compatibility to `14.6.1` ([#1736](https://github.com/revanced/revanced-patches/issues/1736)) ([696685b](696685b7bb))
* **youtube/custom-video-buffer:** replace patch with removal notice ([#1718](https://github.com/revanced/revanced-patches/issues/1718)) ([4d9659e](4d9659e643))
* **youtube/disable-player-popup-panels:** use better patch description ([6485d4c](6485d4c74d))
* **youtube/general-ads:** do not hide components in library tab ([48cdd4c](48cdd4cee2))
* **youtube/general-ads:** hide image shelf from search results ([e2b907b](e2b907b217))
* **youtube/hide-autoplay-button:** do not disable autoplay button when hidden ([db81982](db81982fc9))
* **youtube:** `hide-floating-microphone-button` patch ([16dfab6](16dfab69be))
* **youtube:** bump compatibility to `18.05.40` ([#1704](https://github.com/revanced/revanced-patches/issues/1704)) ([4d2131f](4d2131f148))
* **youtube:** bump compatibility to `18.05.40` ([#1743](https://github.com/revanced/revanced-patches/issues/1743)) ([14229c7](14229c7636))
* **youtubevanced:** `general-ads` patch ([#1693](https://github.com/revanced/revanced-patches/issues/1693)) ([3eae68f](3eae68f49b))
2023-03-14 13:03:43 +00:00
LisoUseInAIKyrios
14229c7636 feat(youtube): bump compatibility to 18.05.40 (#1743) 2023-03-14 13:58:58 +01:00
johnconner122
3eae68f49b feat(youtubevanced): general-ads patch (#1693) 2023-03-14 13:58:57 +01:00
LisoUseInAIKyrios
4d9659e643 feat(youtube/custom-video-buffer): replace patch with removal notice (#1718)
Co-authored-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-03-14 13:58:57 +01:00
EvadeMaster
2939856bbc fix(twitch): misspelling annotations 2023-03-14 13:58:57 +01:00
EvadeMaster
696685b7bb feat(twitch): constraint compatibility to 14.6.1 (#1736) 2023-03-14 13:58:56 +01:00
EvadeMaster
d08dbcd117 chore(gradle): bump wrapper to 8.0.2 (#1737) 2023-03-14 13:58:56 +01:00
EvadeMaster
d9526a95de feat(reddit): bump compatibility to 2023.09.1 (#1729) 2023-03-14 13:58:56 +01:00
EvadeMaster
4d2131f148 feat(youtube): bump compatibility to 18.05.40 (#1704) 2023-03-14 13:58:55 +01:00
LisoUseInAIKyrios
452a92287f feat(myexpenses/unlock-pro): constrain to last working version 2023-03-14 13:58:55 +01:00
LisousEinaiKyrios
2140ac2a6b feat(reddit): add more compatibility constraints 2023-03-14 13:58:55 +01:00
LisousEinaiKyrios
bf8f74f5bf fix(youtube/return-youtube-dislike): add missing strings 2023-03-14 13:58:54 +01:00
Javier Flores
713eba9a75 chore: update gradle wrapper to 8.0.1 (#1680) 2023-03-14 13:58:54 +01:00
oSumAtrIX
c95a97d5c3 build: update dependencies
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-03-14 13:58:54 +01:00
oSumAtrIX
d0f21cd196 refactor: remove unnecessary annotations
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-03-14 13:58:53 +01:00
oSumAtrIX
7cefed2dbb refactor(youtube/hide-timestamp): use better descriptions
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-03-14 13:58:53 +01:00
oSumAtrIX
16dfab69be feat(youtube): hide-floating-microphone-button patch
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-03-14 13:58:53 +01:00
oSumAtrIX
db81982fc9 feat(youtube/hide-autoplay-button): do not disable autoplay button when hidden
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-03-14 13:58:52 +01:00
KAZI MMT
5a65668892 fix(backdrops/pro-unlock): constrain to most recent working app version (#1677) 2023-03-14 13:58:52 +01:00
oSumAtrIX
48cdd4cee2 feat(youtube/general-ads): do not hide components in library tab
This reverts commit 5a62eb1a28.

Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-03-14 13:58:51 +01:00
oSumAtrIX
6485d4c74d feat(youtube/disable-player-popup-panels): use better patch description
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-03-14 13:58:51 +01:00
falafelp
d6d7acafb2 fix(instagram/hide-timeline-ads): fix compatibility with newer versions (#1672)
Co-authored-by: BuildTools <unconfigured@null.spigotmc.org>
2023-03-14 13:58:51 +01:00
oSumAtrIX
d8760969f7 fix(youtube/general-ads): remove duplicate preference 2023-03-14 13:58:51 +01:00
oSumAtrIX
e2b907b217 feat(youtube/general-ads): hide image shelf from search results
Signed-off-by: oSumAtrIX <johan.melkonyan1@web.de>
2023-03-14 13:57:00 +01:00
7 changed files with 60 additions and 171 deletions

View File

@@ -1,87 +1,32 @@
# [2.167.0-dev.2](https://github.com/revanced/revanced-patches/compare/v2.167.0-dev.1...v2.167.0-dev.2) (2023-03-19)
### Features
* **youtube/microg-support:** do not depend on `spoof-signature-verification` patch ([af4e765](https://github.com/revanced/revanced-patches/commit/af4e765ca87c6c979e95bc274b32c764a0a32a88))
# [2.167.0-dev.1](https://github.com/revanced/revanced-patches/compare/v2.166.1-dev.1...v2.167.0-dev.1) (2023-03-17)
### Features
* **youtube/spoof-signature-verification:** automatic signature spoofing ([f1395f4](https://github.com/revanced/revanced-patches/commit/f1395f49fae1c0a00de074d58fa7d81f562d3009))
## [2.166.1-dev.1](https://github.com/revanced/revanced-patches/compare/v2.166.0...v2.166.1-dev.1) (2023-03-15)
### Bug Fixes
* **youtube/spoof-signature-verification:** fix audio during home feed video playback ([#1754](https://github.com/revanced/revanced-patches/issues/1754)) ([7dd067b](https://github.com/revanced/revanced-patches/commit/7dd067b0e96679fe653c9796bef31d743287b2d0))
# [2.166.0](https://github.com/revanced/revanced-patches/compare/v2.165.1...v2.166.0) (2023-03-14)
### Bug Fixes
* **backdrops/pro-unlock:** constrain to most recent working app version ([#1677](https://github.com/revanced/revanced-patches/issues/1677)) ([7680838](https://github.com/revanced/revanced-patches/commit/768083882952f49b8c867043518ba888603b3049))
* **instagram/hide-timeline-ads:** fix compatibility with newer versions ([#1672](https://github.com/revanced/revanced-patches/issues/1672)) ([b803e3e](https://github.com/revanced/revanced-patches/commit/b803e3e1a743e32809195e8a358568572a59dac2))
* **twitch:** misspelling annotations ([675c970](https://github.com/revanced/revanced-patches/commit/675c970041abc30440533f763c5be709abd3f725))
* **youtube/general-ads:** remove duplicate preference ([89820c6](https://github.com/revanced/revanced-patches/commit/89820c60bb393a6a94bbc868a6fae0501c91d811))
* **youtube/return-youtube-dislike:** add missing strings ([19047b6](https://github.com/revanced/revanced-patches/commit/19047b6963ff578a70d3d327306e1050f7ce1c70))
### Features
* **myexpenses/unlock-pro:** constrain to last working version ([f68c87b](https://github.com/revanced/revanced-patches/commit/f68c87b0edc88e80ef2f3110f75be86236dffdb7))
* **reddit:** add more compatibility constraints ([65e5c26](https://github.com/revanced/revanced-patches/commit/65e5c2639084f07e1f19b9933febcebc43ad12c4))
* **reddit:** bump compatibility to `2023.09.1` ([#1729](https://github.com/revanced/revanced-patches/issues/1729)) ([c8997e8](https://github.com/revanced/revanced-patches/commit/c8997e8ca587aedfa4318ace9fc119c262f00933))
* **twitch:** constraint compatibility to `14.6.1` ([#1736](https://github.com/revanced/revanced-patches/issues/1736)) ([7d4294f](https://github.com/revanced/revanced-patches/commit/7d4294f691e1e2e8a2679e2504a9fd5dc7e05201))
* **youtube/custom-video-buffer:** replace patch with removal notice ([#1718](https://github.com/revanced/revanced-patches/issues/1718)) ([29f952d](https://github.com/revanced/revanced-patches/commit/29f952d73e07f8f666d4744d6d97374bebfdc3c6))
* **youtube/disable-player-popup-panels:** use better patch description ([7150662](https://github.com/revanced/revanced-patches/commit/71506625aca42aa4901878c0f706793e17ca5607))
* **youtube/general-ads:** do not hide components in library tab ([d56d3bd](https://github.com/revanced/revanced-patches/commit/d56d3bd94b8f06ff9f915fe0b0ba3d5f484ea971))
* **youtube/general-ads:** hide image shelf from search results ([e4c2450](https://github.com/revanced/revanced-patches/commit/e4c2450ebac4cacae64a81060de8c146ba542e37))
* **youtube/hide-autoplay-button:** do not disable autoplay button when hidden ([98d0084](https://github.com/revanced/revanced-patches/commit/98d00848c9a0aa0247d77e9ae16450697a6c154c))
* **youtube:** `hide-floating-microphone-button` patch ([8f33b11](https://github.com/revanced/revanced-patches/commit/8f33b110facb8f8a04416459f3d715bc77002231))
* **youtube:** bump compatibility to `18.05.40` ([#1704](https://github.com/revanced/revanced-patches/issues/1704)) ([77fe23b](https://github.com/revanced/revanced-patches/commit/77fe23b53e27b7b6a1c48ba0cfeb182ae99f9ab8))
* **youtube:** bump compatibility to `18.05.40` ([#1743](https://github.com/revanced/revanced-patches/issues/1743)) ([1090388](https://github.com/revanced/revanced-patches/commit/109038839574f7ba07f91ef27b61d6a650f2ef34))
* **youtubevanced:** `general-ads` patch ([#1693](https://github.com/revanced/revanced-patches/issues/1693)) ([b6ca3b4](https://github.com/revanced/revanced-patches/commit/b6ca3b4491cc0a5c42b6a52ec48ad0ff8a54f0b2))
# [2.166.0-dev.1](https://github.com/revanced/revanced-patches/compare/v2.165.1...v2.166.0-dev.1) (2023-03-14)
### Bug Fixes
* **backdrops/pro-unlock:** constrain to most recent working app version ([#1677](https://github.com/revanced/revanced-patches/issues/1677)) ([7680838](https://github.com/revanced/revanced-patches/commit/768083882952f49b8c867043518ba888603b3049))
* **instagram/hide-timeline-ads:** fix compatibility with newer versions ([#1672](https://github.com/revanced/revanced-patches/issues/1672)) ([b803e3e](https://github.com/revanced/revanced-patches/commit/b803e3e1a743e32809195e8a358568572a59dac2))
* **twitch:** misspelling annotations ([675c970](https://github.com/revanced/revanced-patches/commit/675c970041abc30440533f763c5be709abd3f725))
* **youtube/general-ads:** remove duplicate preference ([89820c6](https://github.com/revanced/revanced-patches/commit/89820c60bb393a6a94bbc868a6fae0501c91d811))
* **youtube/return-youtube-dislike:** add missing strings ([19047b6](https://github.com/revanced/revanced-patches/commit/19047b6963ff578a70d3d327306e1050f7ce1c70))
### Features
* **myexpenses/unlock-pro:** constrain to last working version ([f68c87b](https://github.com/revanced/revanced-patches/commit/f68c87b0edc88e80ef2f3110f75be86236dffdb7))
* **reddit:** add more compatibility constraints ([65e5c26](https://github.com/revanced/revanced-patches/commit/65e5c2639084f07e1f19b9933febcebc43ad12c4))
* **reddit:** bump compatibility to `2023.09.1` ([#1729](https://github.com/revanced/revanced-patches/issues/1729)) ([c8997e8](https://github.com/revanced/revanced-patches/commit/c8997e8ca587aedfa4318ace9fc119c262f00933))
* **twitch:** constraint compatibility to `14.6.1` ([#1736](https://github.com/revanced/revanced-patches/issues/1736)) ([7d4294f](https://github.com/revanced/revanced-patches/commit/7d4294f691e1e2e8a2679e2504a9fd5dc7e05201))
* **youtube/custom-video-buffer:** replace patch with removal notice ([#1718](https://github.com/revanced/revanced-patches/issues/1718)) ([29f952d](https://github.com/revanced/revanced-patches/commit/29f952d73e07f8f666d4744d6d97374bebfdc3c6))
* **youtube/disable-player-popup-panels:** use better patch description ([7150662](https://github.com/revanced/revanced-patches/commit/71506625aca42aa4901878c0f706793e17ca5607))
* **youtube/general-ads:** do not hide components in library tab ([d56d3bd](https://github.com/revanced/revanced-patches/commit/d56d3bd94b8f06ff9f915fe0b0ba3d5f484ea971))
* **youtube/general-ads:** hide image shelf from search results ([e4c2450](https://github.com/revanced/revanced-patches/commit/e4c2450ebac4cacae64a81060de8c146ba542e37))
* **youtube/hide-autoplay-button:** do not disable autoplay button when hidden ([98d0084](https://github.com/revanced/revanced-patches/commit/98d00848c9a0aa0247d77e9ae16450697a6c154c))
* **youtube:** `hide-floating-microphone-button` patch ([8f33b11](https://github.com/revanced/revanced-patches/commit/8f33b110facb8f8a04416459f3d715bc77002231))
* **youtube:** bump compatibility to `18.05.40` ([#1704](https://github.com/revanced/revanced-patches/issues/1704)) ([77fe23b](https://github.com/revanced/revanced-patches/commit/77fe23b53e27b7b6a1c48ba0cfeb182ae99f9ab8))
* **youtube:** bump compatibility to `18.05.40` ([#1743](https://github.com/revanced/revanced-patches/issues/1743)) ([1090388](https://github.com/revanced/revanced-patches/commit/109038839574f7ba07f91ef27b61d6a650f2ef34))
* **youtubevanced:** `general-ads` patch ([#1693](https://github.com/revanced/revanced-patches/issues/1693)) ([b6ca3b4](https://github.com/revanced/revanced-patches/commit/b6ca3b4491cc0a5c42b6a52ec48ad0ff8a54f0b2))
## [2.165.1](https://github.com/revanced/revanced-patches/compare/v2.165.0...v2.165.1) (2023-03-14)
# [2.166.0-dev.1](https://github.com/revanced/revanced-patches/compare/v2.165.0...v2.166.0-dev.1) (2023-03-14)
### Bug Fixes
* **backdrops/pro-unlock:** constrain to most recent working app version ([#1677](https://github.com/revanced/revanced-patches/issues/1677)) ([e209ba5](https://github.com/revanced/revanced-patches/commit/e209ba519e630e4589b9bd19720d30a005eea118))
* **instagram/hide-timeline-ads:** fix compatibility with newer versions ([#1672](https://github.com/revanced/revanced-patches/issues/1672)) ([f502e83](https://github.com/revanced/revanced-patches/commit/f502e83b2e8b8459369923c74785152b817aedca))
* **twitch:** misspelling annotations ([5b634f6](https://github.com/revanced/revanced-patches/commit/5b634f61224532499bd9091dab1714942ec989ef))
* **youtube/general-ads:** remove duplicate preference ([9934e89](https://github.com/revanced/revanced-patches/commit/9934e8963669b39deb6c3d571dd3a1be93ec2ccb))
* **youtube/return-youtube-dislike:** add missing strings ([6cde7db](https://github.com/revanced/revanced-patches/commit/6cde7db2e431a56dc25823f664b6cf6665595ad9))
* **youtube/spoof-signature-verification:** use correct fingerprint ([13090ee](https://github.com/revanced/revanced-patches/commit/13090eeb47660980cec8dc5bbb80447de5047a1d))
### Features
* **myexpenses/unlock-pro:** constrain to last working version ([f307c66](https://github.com/revanced/revanced-patches/commit/f307c66447edd1b226db3c1189494a45c956c32c))
* **reddit:** add more compatibility constraints ([0cd4e86](https://github.com/revanced/revanced-patches/commit/0cd4e86d79e5ec65aa190a7ee186e2eb54d5894b))
* **reddit:** bump compatibility to `2023.09.1` ([#1729](https://github.com/revanced/revanced-patches/issues/1729)) ([f5e38a8](https://github.com/revanced/revanced-patches/commit/f5e38a8ef23a9de09cadeb4137a8950d24f71698))
* **twitch:** constraint compatibility to `14.6.1` ([#1736](https://github.com/revanced/revanced-patches/issues/1736)) ([d5fe867](https://github.com/revanced/revanced-patches/commit/d5fe867385fd35c7639204e9fdbc6855b775e7c0))
* **youtube/custom-video-buffer:** replace patch with removal notice ([#1718](https://github.com/revanced/revanced-patches/issues/1718)) ([7c24561](https://github.com/revanced/revanced-patches/commit/7c2456115e279db2154bcbcd66a723e41e243717))
* **youtube/disable-player-popup-panels:** use better patch description ([58a6090](https://github.com/revanced/revanced-patches/commit/58a609074e009864d61d2b72a68dc1a8532ac203))
* **youtube/general-ads:** do not hide components in library tab ([6d61d76](https://github.com/revanced/revanced-patches/commit/6d61d765251af92829d0522e2c33b02647c3fed4))
* **youtube/general-ads:** hide image shelf from search results ([f71aa3f](https://github.com/revanced/revanced-patches/commit/f71aa3f77ba1b2722fc146fe643245ee5f9397ae))
* **youtube/hide-autoplay-button:** do not disable autoplay button when hidden ([874b68a](https://github.com/revanced/revanced-patches/commit/874b68add6fe79375d232b6363af88b9a7f51ede))
* **youtube:** `hide-floating-microphone-button` patch ([9fb176c](https://github.com/revanced/revanced-patches/commit/9fb176cdc680504dc378090161ac4849915d5a2a))
* **youtube:** bump compatibility to `18.05.40` ([#1704](https://github.com/revanced/revanced-patches/issues/1704)) ([cadb04c](https://github.com/revanced/revanced-patches/commit/cadb04c0d840cf48887002d41850086019ad5c14))
* **youtube:** bump compatibility to `18.05.40` ([#1743](https://github.com/revanced/revanced-patches/issues/1743)) ([dc16e11](https://github.com/revanced/revanced-patches/commit/dc16e11b13676870ffaba6ebb0bf9e250741a783))
* **youtubevanced:** `general-ads` patch ([#1693](https://github.com/revanced/revanced-patches/issues/1693)) ([b8e610b](https://github.com/revanced/revanced-patches/commit/b8e610bba91ea88aed8b09e56cbf8f85f8222609))
# [2.165.0](https://github.com/revanced/revanced-patches/compare/v2.164.0...v2.165.0) (2023-03-14)

View File

@@ -290,22 +290,6 @@ The official Patch bundle provided by ReVanced and the community.
| `unlock-prime` | Unlocks Nova Prime and all functions of the app. | all |
</details>
### [📦 `org.totschnig.myexpenses`](https://play.google.com/store/apps/details?id=org.totschnig.myexpenses)
<details>
| 💊 Patch | 📜 Description | 🏹 Target Version |
|:--------:|:--------------:|:-----------------:|
| `unlock-pro` | Unlocks all professional features. | 3.4.9 |
</details>
### [📦 `com.awedea.nyx`](https://play.google.com/store/apps/details?id=com.awedea.nyx)
<details>
| 💊 Patch | 📜 Description | 🏹 Target Version |
|:--------:|:--------------:|:-----------------:|
| `unlock-pro` | Unlocks all pro features. | all |
</details>
### [📦 `co.windyapp.android`](https://play.google.com/store/apps/details?id=co.windyapp.android)
<details>
@@ -314,14 +298,6 @@ The official Patch bundle provided by ReVanced and the community.
| `unlock-pro` | Unlocks all pro features. | all |
</details>
### [📦 `ginlemon.iconpackstudio`](https://play.google.com/store/apps/details?id=ginlemon.iconpackstudio)
<details>
| 💊 Patch | 📜 Description | 🏹 Target Version |
|:--------:|:--------------:|:-----------------:|
| `unlock-pro` | Unlocks all pro features. | all |
</details>
### [📦 `com.ithebk.expensemanager`](https://play.google.com/store/apps/details?id=com.ithebk.expensemanager)
<details>
@@ -330,6 +306,30 @@ The official Patch bundle provided by ReVanced and the community.
| `unlock-pro` | Unlocks pro features. | all |
</details>
### [📦 `ginlemon.iconpackstudio`](https://play.google.com/store/apps/details?id=ginlemon.iconpackstudio)
<details>
| 💊 Patch | 📜 Description | 🏹 Target Version |
|:--------:|:--------------:|:-----------------:|
| `unlock-pro` | Unlocks all pro features. | all |
</details>
### [📦 `com.awedea.nyx`](https://play.google.com/store/apps/details?id=com.awedea.nyx)
<details>
| 💊 Patch | 📜 Description | 🏹 Target Version |
|:--------:|:--------------:|:-----------------:|
| `unlock-pro` | Unlocks all pro features. | all |
</details>
### [📦 `org.totschnig.myexpenses`](https://play.google.com/store/apps/details?id=org.totschnig.myexpenses)
<details>
| 💊 Patch | 📜 Description | 🏹 Target Version |
|:--------:|:--------------:|:-----------------:|
| `unlock-pro` | Unlocks all professional features. | 3.4.9 |
</details>
### [📦 `com.ticktick.task`](https://play.google.com/store/apps/details?id=com.ticktick.task)
<details>

View File

@@ -1,2 +1,2 @@
kotlin.code.style = official
version = 2.167.0-dev.2
version = 2.166.0-dev.1

File diff suppressed because one or more lines are too long

View File

@@ -1,17 +0,0 @@
package app.revanced.patches.youtube.misc.fix.playback.fingerprints
import app.revanced.patcher.fingerprint.method.impl.MethodFingerprint
import org.jf.dexlib2.Opcode
// Resolves to the method CronetDataSource.open
// https://androidx.tech/artifacts/media3/media3-datasource-cronet/1.0.0-alpha03-source/androidx/media3/datasource/cronet/CronetDataSource.java.html
object OpenCronetDataSourceFingerprint : MethodFingerprint(
opcodes = listOf(
Opcode.MOVE_RESULT,
Opcode.INVOKE_VIRTUAL,
Opcode.MOVE_RESULT_OBJECT,
),
strings = listOf(
"err_cleartext_not_permitted",
),
)

View File

@@ -11,81 +11,43 @@ import app.revanced.patcher.extensions.instruction
import app.revanced.patcher.patch.BytecodePatch
import app.revanced.patcher.patch.PatchResult
import app.revanced.patcher.patch.PatchResultSuccess
import app.revanced.patcher.patch.annotations.DependsOn
import app.revanced.patcher.patch.annotations.Patch
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod
import app.revanced.patches.shared.settings.preference.impl.StringResource
import app.revanced.patches.shared.settings.preference.impl.SwitchPreference
import app.revanced.patcher.util.smali.ExternalLabel
import app.revanced.patches.youtube.misc.fix.playback.annotation.ProtobufSpoofCompatibility
import app.revanced.patches.youtube.misc.fix.playback.fingerprints.OpenCronetDataSourceFingerprint
import app.revanced.patches.youtube.misc.fix.playback.fingerprints.ProtobufParameterBuilderFingerprint
import app.revanced.patches.youtube.misc.integrations.patch.IntegrationsPatch
import app.revanced.patches.youtube.misc.settings.bytecode.patch.SettingsPatch
import org.jf.dexlib2.iface.instruction.OneRegisterInstruction
@Patch
@Name("spoof-signature-verification")
@Description("Spoofs the client to prevent playback issues.")
@ProtobufSpoofCompatibility
@DependsOn([IntegrationsPatch::class, SettingsPatch::class])
@Version("0.0.1")
class SpoofSignatureVerificationPatch : BytecodePatch(
listOf(
ProtobufParameterBuilderFingerprint,
OpenCronetDataSourceFingerprint,
)
listOf(ProtobufParameterBuilderFingerprint)
) {
override fun execute(context: BytecodeContext): PatchResult {
SettingsPatch.PreferenceScreen.MISC.addPreferences(
SwitchPreference(
"revanced_spoof_signature_verification",
StringResource("revanced_spoof_signature_verification_title", "Spoof app signature"),
false,
StringResource("revanced_spoof_signature_verification_summary_on", "App signature spoofed"),
StringResource("revanced_spoof_signature_verification_summary_off", "App signature not spoofed")
)
)
// hook parameter
ProtobufParameterBuilderFingerprint.result?.let {
val setParamMethod = context
.toMethodWalker(it.method)
.nextMethod(it.scanResult.patternScanResult!!.startIndex, true).getMethod() as MutableMethod
.nextMethod(it.scanResult.patternScanResult!!.startIndex, true).getMethod() as MutableMethod
setParamMethod.apply {
val protobufParameterRegister = 3
val parameterValue = "8AEByAMTuAQP" /* Protobuf Parameter of shorts */
addInstructions(
0,
"""
invoke-static {p$protobufParameterRegister}, $INTEGRATIONS_CLASS_DESCRIPTOR->overrideProtobufParameter(Ljava/lang/String;)Ljava/lang/String;
move-result-object p$protobufParameterRegister
"""
)
invoke-virtual { p$protobufParameterRegister }, Ljava/lang/String;->length()I
move-result v0
const/16 v1, 0x10
if-ge v0, v1, :not_spoof # bypass on feed
const-string p$protobufParameterRegister, "$parameterValue"
""",
listOf(ExternalLabel("not_spoof", instruction(0))))
}
} ?: return ProtobufParameterBuilderFingerprint.toErrorResult()
// hook video playback result
OpenCronetDataSourceFingerprint.result?.let {
it.mutableMethod.apply {
val getHeadersInstructionIndex = it.scanResult.patternScanResult!!.endIndex
val responseCodeRegister =
(instruction(getHeadersInstructionIndex - 2) as OneRegisterInstruction).registerA
addInstructions(
getHeadersInstructionIndex + 1,
"""
invoke-static {v$responseCodeRegister}, $INTEGRATIONS_CLASS_DESCRIPTOR->onResponse(I)V
"""
)
}
} ?: return OpenCronetDataSourceFingerprint.toErrorResult()
return PatchResultSuccess()
}
companion object {
const val INTEGRATIONS_CLASS_DESCRIPTOR = "Lapp/revanced/integrations/patches/SpoofSignatureVerificationPatch;"
}
}

View File

@@ -12,7 +12,6 @@ import app.revanced.patcher.patch.annotations.Patch
import app.revanced.patches.shared.fingerprints.WatchWhileActivityFingerprint
import app.revanced.patches.youtube.layout.buttons.cast.patch.HideCastButtonPatch
import app.revanced.patches.shared.misc.fix.spoof.patch.ClientSpoofPatch
import app.revanced.patches.youtube.misc.fix.playback.patch.SpoofSignatureVerificationPatch
import app.revanced.patches.youtube.misc.microg.annotations.MicroGPatchCompatibility
import app.revanced.patches.youtube.misc.microg.fingerprints.*
import app.revanced.patches.youtube.misc.microg.patch.resource.MicroGResourcePatch