mirror of
https://github.com/revanced/revanced-patches.git
synced 2025-04-29 22:24:27 +02:00
use correct tag
This commit is contained in:
parent
0900686564
commit
fc540ddab2
4
extensions/music/build.gradle.kts
Normal file
4
extensions/music/build.gradle.kts
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
dependencies {
|
||||||
|
compileOnly(project(":extensions:shared:library"))
|
||||||
|
compileOnly(libs.annotation)
|
||||||
|
}
|
1
extensions/music/src/main/AndroidManifest.xml
Normal file
1
extensions/music/src/main/AndroidManifest.xml
Normal file
@ -0,0 +1 @@
|
|||||||
|
<manifest/>
|
@ -0,0 +1,20 @@
|
|||||||
|
package app.revanced.extension.music.announcements;
|
||||||
|
|
||||||
|
import android.app.Activity;
|
||||||
|
import android.os.Build;
|
||||||
|
import androidx.annotation.RequiresApi;
|
||||||
|
import app.revanced.extension.shared.announcements.BaseAnnouncementsPatch;
|
||||||
|
|
||||||
|
@SuppressWarnings("unused")
|
||||||
|
public class AnnouncementsPatch extends BaseAnnouncementsPatch {
|
||||||
|
private static final AnnouncementsPatch INSTANCE = new AnnouncementsPatch();
|
||||||
|
|
||||||
|
private AnnouncementsPatch() {
|
||||||
|
super("music");
|
||||||
|
}
|
||||||
|
|
||||||
|
@RequiresApi(api = Build.VERSION_CODES.O)
|
||||||
|
public static void showAnnouncement(final Activity context) {
|
||||||
|
INSTANCE._showAnnouncement(context);
|
||||||
|
}
|
||||||
|
}
|
@ -2,8 +2,6 @@ package app.revanced.extension.shared.announcements;
|
|||||||
|
|
||||||
import static android.text.Html.FROM_HTML_MODE_COMPACT;
|
import static android.text.Html.FROM_HTML_MODE_COMPACT;
|
||||||
import static app.revanced.extension.shared.StringRef.str;
|
import static app.revanced.extension.shared.StringRef.str;
|
||||||
import static app.revanced.extension.shared.announcements.requests.AnnouncementsRoutes.GET_LATEST_ANNOUNCEMENTS;
|
|
||||||
import static app.revanced.extension.shared.announcements.requests.AnnouncementsRoutes.GET_LATEST_ANNOUNCEMENT_IDS;
|
|
||||||
|
|
||||||
import android.app.Activity;
|
import android.app.Activity;
|
||||||
import android.app.AlertDialog;
|
import android.app.AlertDialog;
|
||||||
@ -26,15 +24,17 @@ import app.revanced.extension.shared.requests.Requester;
|
|||||||
import app.revanced.extension.shared.announcements.requests.AnnouncementsRoutes;
|
import app.revanced.extension.shared.announcements.requests.AnnouncementsRoutes;
|
||||||
import app.revanced.extension.shared.settings.BaseSettings;
|
import app.revanced.extension.shared.settings.BaseSettings;
|
||||||
|
|
||||||
@SuppressWarnings("unused")
|
public abstract class BaseAnnouncementsPatch {
|
||||||
public final class AnnouncementsPatch {
|
private final AnnouncementsRoutes announcementsRoutes;
|
||||||
private AnnouncementsPatch() {
|
|
||||||
|
public BaseAnnouncementsPatch(String tag) {
|
||||||
|
this.announcementsRoutes = new AnnouncementsRoutes(tag);
|
||||||
}
|
}
|
||||||
|
|
||||||
@RequiresApi(api = Build.VERSION_CODES.O)
|
@RequiresApi(api = Build.VERSION_CODES.O)
|
||||||
private static boolean isLatestAlready() throws IOException {
|
private boolean isLatestAlready() throws IOException {
|
||||||
HttpURLConnection connection =
|
HttpURLConnection connection =
|
||||||
AnnouncementsRoutes.getAnnouncementsConnectionFromRoute(GET_LATEST_ANNOUNCEMENT_IDS);
|
announcementsRoutes.getAnnouncementsConnectionFromRoute(announcementsRoutes.GET_LATEST_ANNOUNCEMENT_IDS);
|
||||||
|
|
||||||
Logger.printDebug(() -> "Get latest announcement IDs route connection url: " + connection.getURL());
|
Logger.printDebug(() -> "Get latest announcement IDs route connection url: " + connection.getURL());
|
||||||
|
|
||||||
@ -71,7 +71,7 @@ public final class AnnouncementsPatch {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@RequiresApi(api = Build.VERSION_CODES.O)
|
@RequiresApi(api = Build.VERSION_CODES.O)
|
||||||
public static void showAnnouncement(final Activity context) {
|
public void _showAnnouncement(final Activity context) {
|
||||||
if (!BaseSettings.ANNOUNCEMENTS.get()) return;
|
if (!BaseSettings.ANNOUNCEMENTS.get()) return;
|
||||||
|
|
||||||
// Check if there is internet connection
|
// Check if there is internet connection
|
||||||
@ -81,8 +81,8 @@ public final class AnnouncementsPatch {
|
|||||||
try {
|
try {
|
||||||
if (isLatestAlready()) return;
|
if (isLatestAlready()) return;
|
||||||
|
|
||||||
HttpURLConnection connection = AnnouncementsRoutes
|
HttpURLConnection connection = announcementsRoutes
|
||||||
.getAnnouncementsConnectionFromRoute(GET_LATEST_ANNOUNCEMENTS);
|
.getAnnouncementsConnectionFromRoute(announcementsRoutes.GET_LATEST_ANNOUNCEMENTS);
|
||||||
|
|
||||||
Logger.printDebug(() -> "Get latest announcements route connection url: " + connection.getURL());
|
Logger.printDebug(() -> "Get latest announcements route connection url: " + connection.getURL());
|
||||||
|
|
@ -9,14 +9,15 @@ import java.net.HttpURLConnection;
|
|||||||
import static app.revanced.extension.shared.requests.Route.Method.GET;
|
import static app.revanced.extension.shared.requests.Route.Method.GET;
|
||||||
|
|
||||||
public class AnnouncementsRoutes {
|
public class AnnouncementsRoutes {
|
||||||
public static final Route GET_LATEST_ANNOUNCEMENT_IDS = new Route(GET, "/announcements/latest/id?tag=youtube");
|
public final Route GET_LATEST_ANNOUNCEMENTS;
|
||||||
public static final Route GET_LATEST_ANNOUNCEMENTS = new Route(GET, "/announcements/latest?tag=youtube");
|
public final Route GET_LATEST_ANNOUNCEMENT_IDS;
|
||||||
private static final String ANNOUNCEMENTS_PROVIDER = "https://api.revanced.app/v4";
|
|
||||||
|
|
||||||
private AnnouncementsRoutes() {
|
public AnnouncementsRoutes(String tag) {
|
||||||
|
this.GET_LATEST_ANNOUNCEMENTS = new Route(GET, "/announcements/latest?tag=" + tag);
|
||||||
|
this.GET_LATEST_ANNOUNCEMENT_IDS = new Route(GET, "/announcements/latest/ids?tag=" + tag);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static HttpURLConnection getAnnouncementsConnectionFromRoute(Route route, String... params) throws IOException {
|
public HttpURLConnection getAnnouncementsConnectionFromRoute(Route route, String... params) throws IOException {
|
||||||
return Requester.getConnectionFromRoute(ANNOUNCEMENTS_PROVIDER, route, params);
|
return Requester.getConnectionFromRoute("https://api.revanced.app/v4", route, params);
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -0,0 +1,20 @@
|
|||||||
|
package app.revanced.extension.youtube.patches.announcements;
|
||||||
|
|
||||||
|
import android.app.Activity;
|
||||||
|
import android.os.Build;
|
||||||
|
import androidx.annotation.RequiresApi;
|
||||||
|
import app.revanced.extension.shared.announcements.BaseAnnouncementsPatch;
|
||||||
|
|
||||||
|
@SuppressWarnings("unused")
|
||||||
|
public class AnnouncementsPatch extends BaseAnnouncementsPatch {
|
||||||
|
private static final AnnouncementsPatch INSTANCE = new AnnouncementsPatch();
|
||||||
|
|
||||||
|
private AnnouncementsPatch() {
|
||||||
|
super("youtube");
|
||||||
|
}
|
||||||
|
|
||||||
|
@RequiresApi(api = Build.VERSION_CODES.O)
|
||||||
|
public static void showAnnouncement(final Activity context) {
|
||||||
|
INSTANCE._showAnnouncement(context);
|
||||||
|
}
|
||||||
|
}
|
@ -6,17 +6,15 @@ import app.revanced.patcher.patch.*
|
|||||||
import app.revanced.patches.all.misc.resources.addResources
|
import app.revanced.patches.all.misc.resources.addResources
|
||||||
import app.revanced.patches.all.misc.resources.addResourcesPatch
|
import app.revanced.patches.all.misc.resources.addResourcesPatch
|
||||||
|
|
||||||
private const val EXTENSION_CLASS_DESCRIPTOR =
|
|
||||||
"Lapp/revanced/extension/shared/announcements/AnnouncementsPatch;"
|
|
||||||
|
|
||||||
fun announcementsPatch(
|
fun announcementsPatch(
|
||||||
mainActivityOnCreateFingerprint: Fingerprint,
|
mainActivityOnCreateFingerprint: Fingerprint,
|
||||||
extensionPatch: Patch<*>,
|
extensionPatch: Patch<*>,
|
||||||
|
extensionClassDescriptor: String,
|
||||||
block: BytecodePatchBuilder.() -> Unit = {},
|
block: BytecodePatchBuilder.() -> Unit = {},
|
||||||
executeBlock: BytecodePatchContext.() -> Unit = {},
|
executeBlock: BytecodePatchContext.() -> Unit = {},
|
||||||
) = bytecodePatch(
|
) = bytecodePatch(
|
||||||
name = "Announcements",
|
name = "Announcements",
|
||||||
description = "Adds an option to show announcements from ReVanced on app startup.",
|
description = "Shows announcements from ReVanced on app startup.",
|
||||||
) {
|
) {
|
||||||
block()
|
block()
|
||||||
|
|
||||||
@ -30,7 +28,7 @@ fun announcementsPatch(
|
|||||||
|
|
||||||
mainActivityOnCreateFingerprint.method.addInstructions(
|
mainActivityOnCreateFingerprint.method.addInstructions(
|
||||||
0,
|
0,
|
||||||
"invoke-static/range { p0 .. p0 }, $EXTENSION_CLASS_DESCRIPTOR->showAnnouncement(Landroid/app/Activity;)V",
|
"invoke-static/range { p0 .. p0 }, $extensionClassDescriptor->showAnnouncement(Landroid/app/Activity;)V",
|
||||||
)
|
)
|
||||||
|
|
||||||
executeBlock()
|
executeBlock()
|
||||||
|
@ -1,12 +1,13 @@
|
|||||||
package app.revanced.patches.music.misc.announcements
|
package app.revanced.patches.music.misc.announcements
|
||||||
|
|
||||||
import app.revanced.patches.all.misc.announcements.announcementsPatch
|
import app.revanced.patches.all.misc.announcements.announcementsPatch
|
||||||
|
import app.revanced.patches.music.misc.extension.sharedExtensionPatch
|
||||||
import app.revanced.patches.music.shared.musicActivityOnCreateFingerprint
|
import app.revanced.patches.music.shared.musicActivityOnCreateFingerprint
|
||||||
import app.revanced.patches.youtube.misc.extension.sharedExtensionPatch
|
|
||||||
|
|
||||||
val announcementsPatch = announcementsPatch(
|
val announcementsPatch = announcementsPatch(
|
||||||
musicActivityOnCreateFingerprint,
|
musicActivityOnCreateFingerprint,
|
||||||
sharedExtensionPatch,
|
sharedExtensionPatch,
|
||||||
|
"Lapp/revanced/extension/music/announcements/AnnouncementsPatch;",
|
||||||
{
|
{
|
||||||
compatibleWith("com.google.android.apps.music")
|
compatibleWith("com.google.android.apps.music")
|
||||||
},
|
},
|
||||||
|
@ -4,5 +4,6 @@ import app.revanced.patches.music.misc.extension.hooks.applicationInitHook
|
|||||||
import app.revanced.patches.shared.misc.extension.sharedExtensionPatch
|
import app.revanced.patches.shared.misc.extension.sharedExtensionPatch
|
||||||
|
|
||||||
val sharedExtensionPatch = sharedExtensionPatch(
|
val sharedExtensionPatch = sharedExtensionPatch(
|
||||||
|
"music",
|
||||||
applicationInitHook,
|
applicationInitHook,
|
||||||
)
|
)
|
||||||
|
@ -11,6 +11,7 @@ import app.revanced.patches.youtube.shared.mainActivityOnCreateFingerprint
|
|||||||
val announcementsPatch = announcementsPatch(
|
val announcementsPatch = announcementsPatch(
|
||||||
mainActivityOnCreateFingerprint,
|
mainActivityOnCreateFingerprint,
|
||||||
sharedExtensionPatch,
|
sharedExtensionPatch,
|
||||||
|
"Lapp/revanced/extension/youtube/patches/announcements/AnnouncementsPatch;",
|
||||||
{
|
{
|
||||||
dependsOn(settingsPatch)
|
dependsOn(settingsPatch)
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user