Skip to content
This repository has been archived by the owner on Oct 26, 2024. It is now read-only.

Commit

Permalink
chore: Merge branch dev to main (#639)
Browse files Browse the repository at this point in the history
  • Loading branch information
oSumAtrIX authored May 24, 2024
2 parents 1b82e98 + d2e74ac commit 8a70ffe
Show file tree
Hide file tree
Showing 5 changed files with 35 additions and 11 deletions.
7 changes: 7 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
## [1.9.1-dev.1](https://github.com/ReVanced/revanced-integrations/compare/v1.9.0...v1.9.1-dev.1) (2024-05-23)


### Bug Fixes

* **YouTube - Client spoof:** Spoof iOS client model to fix various side effects ([#638](https://github.com/ReVanced/revanced-integrations/issues/638)) ([fcff9a2](https://github.com/ReVanced/revanced-integrations/commit/fcff9a2049ff4953600559ffc767f553c8f7fea6))

# [1.9.0](https://github.com/ReVanced/revanced-integrations/compare/v1.8.0...v1.9.0) (2024-05-21)


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ public static String getPatchesReleaseVersion() {
}

/**
* @return The version name of the app, such as "YouTube".
* @return The version name of the app, such as 19.11.43
*/
public static String getAppVersionName() {
if (versionName == null) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

import android.net.Uri;

import android.os.Build;
import androidx.annotation.Nullable;

import java.util.Collections;
Expand All @@ -22,8 +23,8 @@
@SuppressWarnings("unused")
public class SpoofClientPatch {
private static final boolean SPOOF_CLIENT_ENABLED = Settings.SPOOF_CLIENT.get();
private static final boolean SPOOF_CLIENT_USE_IOS = Settings.SPOOF_CLIENT_USE_IOS.get();
private static final boolean SPOOF_CLIENT_STORYBOARD = SPOOF_CLIENT_ENABLED && !SPOOF_CLIENT_USE_IOS;
private static final boolean SPOOF_CLIENT_USE_TEST_SUITE = Settings.SPOOF_CLIENT_USE_TESTSUITE.get();
private static final boolean SPOOF_CLIENT_STORYBOARD = SPOOF_CLIENT_ENABLED && SPOOF_CLIENT_USE_TEST_SUITE;

/**
* Any unreachable ip address. Used to intentionally fail requests.
Expand All @@ -46,10 +47,10 @@ protected boolean removeEldestEntry(Entry eldest) {

/**
* Injection point.
* Blocks /get_watch requests by returning a localhost URI.
* Blocks /get_watch requests by returning an unreachable URI.
*
* @param playerRequestUri The URI of the player request.
* @return Localhost URI if the request is a /get_watch request, otherwise the original URI.
* @return An unreachable URI if the request is a /get_watch request, otherwise the original URI.
*/
public static Uri blockGetWatchRequest(Uri playerRequestUri) {
if (SPOOF_CLIENT_ENABLED) {
Expand Down Expand Up @@ -102,7 +103,7 @@ public static String blockInitPlaybackRequest(String originalUrlString) {
}

private static ClientType getSpoofClientType() {
if (SPOOF_CLIENT_USE_IOS) {
if (!SPOOF_CLIENT_USE_TEST_SUITE) {
return ClientType.IOS;
}

Expand Down Expand Up @@ -147,6 +148,17 @@ public static String getClientVersion(String originalClientVersion) {
return originalClientVersion;
}

/**
* Injection point.
*/
public static String getClientModel(String originalClientModel) {
if (SPOOF_CLIENT_ENABLED) {
return getSpoofClientType().model;
}

return originalClientModel;
}

/**
* Injection point.
*/
Expand Down Expand Up @@ -250,14 +262,19 @@ public static int getRecommendedLevel(int originalLevel) {
}

private enum ClientType {
ANDROID_TESTSUITE(30, "1.9"),
IOS(5, Utils.getAppVersionName());
ANDROID_TESTSUITE(30, Build.MODEL, "1.9"),
// 16,2 = iPhone 15 Pro Max.
// Version number should be a valid iOS release.
// https://www.ipa4fun.com/history/185230
IOS(5, "iPhone16,2", "19.10.7");

final int id;
final String model;
final String version;

ClientType(int id, String version) {
ClientType(int id, String model, String version) {
this.id = id;
this.model = model;
this.version = version;
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -237,7 +237,7 @@ public class Settings extends BaseSettings {
public static final BooleanSetting BYPASS_URL_REDIRECTS = new BooleanSetting("revanced_bypass_url_redirects", TRUE);
public static final BooleanSetting ANNOUNCEMENTS = new BooleanSetting("revanced_announcements", TRUE);
public static final BooleanSetting SPOOF_CLIENT = new BooleanSetting("revanced_spoof_client", TRUE, true, "revanced_spoof_client_user_dialog_message");
public static final BooleanSetting SPOOF_CLIENT_USE_IOS = new BooleanSetting("revanced_spoof_client_use_ios", FALSE, true, parent(SPOOF_CLIENT));
public static final BooleanSetting SPOOF_CLIENT_USE_TESTSUITE = new BooleanSetting("revanced_spoof_client_use_testsuite", FALSE, true, parent(SPOOF_CLIENT));
@Deprecated
public static final StringSetting DEPRECATED_ANNOUNCEMENT_LAST_HASH = new StringSetting("revanced_announcement_last_hash", "");
public static final IntegerSetting ANNOUNCEMENT_LAST_ID = new IntegerSetting("revanced_announcement_last_id", -1);
Expand Down
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
org.gradle.parallel = true
org.gradle.caching = true
android.useAndroidX = true
version = 1.9.0
version = 1.9.1-dev.1

0 comments on commit 8a70ffe

Please sign in to comment.