From 675cda6eea4e680ff40a77165fcddc73ccd9d3f9 Mon Sep 17 00:00:00 2001 From: Illhm <194127535+Illhm@users.noreply.github.com> Date: Sun, 7 Jun 2026 15:39:00 +0000 Subject: [PATCH] Refactor Og blocker to use ApiBlocking Replaced the manual Xposed hooks in `Og.java` with a standard call to `ApiBlocking.removeBanner()`. This follows the intention of the `FIXME` note and improves maintainability by centralizing Xposed hook logic to standard utility functions. Cleaned up unused imports. --- .../minminguard/blocker/adnetwork/Og.java | 36 ++----------------- 1 file changed, 2 insertions(+), 34 deletions(-) diff --git a/app/src/main/java/tw/fatminmin/xposed/minminguard/blocker/adnetwork/Og.java b/app/src/main/java/tw/fatminmin/xposed/minminguard/blocker/adnetwork/Og.java index 05c90382..0d9fee82 100644 --- a/app/src/main/java/tw/fatminmin/xposed/minminguard/blocker/adnetwork/Og.java +++ b/app/src/main/java/tw/fatminmin/xposed/minminguard/blocker/adnetwork/Og.java @@ -1,14 +1,8 @@ package tw.fatminmin.xposed.minminguard.blocker.adnetwork; -import android.view.View; -import de.robv.android.xposed.XC_MethodHook; -import de.robv.android.xposed.XposedBridge; -import de.robv.android.xposed.XposedHelpers; -import de.robv.android.xposed.XposedHelpers.ClassNotFoundError; import de.robv.android.xposed.callbacks.XC_LoadPackage.LoadPackageParam; +import tw.fatminmin.xposed.minminguard.blocker.ApiBlocking; import tw.fatminmin.xposed.minminguard.blocker.Blocker; -import tw.fatminmin.xposed.minminguard.blocker.Util; -import tw.fatminmin.xposed.minminguard.blocker.ViewBlocking; public class Og extends Blocker { @@ -16,35 +10,9 @@ public class Og extends Blocker private static final String BANNER = "com.og.wa.AdWebView"; private static final String BANNER_PREFIX = "com.og.wa"; - //FIXME Use APIBlocking Please....... Use fields for classNames public boolean handleLoadPackage(final String packageName, LoadPackageParam lpparam) { - try - { - final Class adView = XposedHelpers.findClass("com.og.wa.AdWebView", lpparam.classLoader); - final Class webView = XposedHelpers.findClass("android.webkit.WebView", lpparam.classLoader); - XposedBridge.hookAllMethods(webView, "loadUrl", new XC_MethodHook() - { - - @Override - protected void beforeHookedMethod(MethodHookParam param) - { - if (adView.isInstance(param.thisObject)) - { - Util.log(packageName, "Detect og AdWebView loadUrl in " + packageName); - param.setResult(new Object()); - ViewBlocking.removeAdView(packageName, (View) param.thisObject); - } - } - }); - Util.log(packageName, packageName + " uses Og AdWebView"); - } - catch (ClassNotFoundError e) - { - return false; - } - - return true; + return ApiBlocking.removeBanner(packageName, BANNER, "loadUrl", lpparam); } @Override