@@ -61,6 +61,7 @@ public class WppCore {
6161 private static SQLiteDatabase mWaDatabase ;
6262 public static BaseClient client ;
6363 private static Object mCachedMessageStore ;
64+ private static Class <?> mSettingsNotificationsClass ;
6465
6566
6667 public static void Initialize (ClassLoader loader , XSharedPreferences pref ) throws Exception {
@@ -77,6 +78,9 @@ public static void Initialize(ClassLoader loader, XSharedPreferences pref) throw
7778 convChatField = Unobfuscator .loadAntiRevokeConvChatField (loader );
7879 chatJidField = Unobfuscator .loadAntiRevokeChatJidField (loader );
7980
81+ // Settings notifications activity (required for ActivityController.EXPORTED_ACTIVITY)
82+ mSettingsNotificationsClass = getSettingsNotificationsActivityClass (loader );
83+
8084 // StartUpPrefs
8185 var startPrefsConfig = Unobfuscator .loadStartPrefsConfig (loader );
8286 XposedBridge .hookMethod (startPrefsConfig , new XC_MethodHook () {
@@ -231,6 +235,33 @@ public synchronized static Class getViewOnceViewerActivityClass(@NonNull ClassLo
231235 : XposedHelpers .findClass ("com.whatsapp.viewonce.ui.messaging.ViewOnceViewerActivity" , loader );
232236 }
233237
238+ public synchronized static Class getAboutActivityClass (@ NonNull ClassLoader loader ) {
239+ Class oldClass = XposedHelpers .findClassIfExists ("com.whatsapp.settings.About" , loader );
240+
241+ return oldClass != null
242+ ? oldClass
243+ : XposedHelpers .findClass ("com.whatsapp.settings.ui.About" , loader );
244+ }
245+
246+ public synchronized static Class getSettingsNotificationsActivityClass (@ NonNull ClassLoader loader ) {
247+ if (mSettingsNotificationsClass != null )
248+ return mSettingsNotificationsClass ;
249+
250+ Class oldClass = XposedHelpers .findClassIfExists ("com.whatsapp.settings.SettingsNotifications" , loader );
251+
252+ return oldClass != null
253+ ? oldClass
254+ : XposedHelpers .findClass ("com.whatsapp.settings.ui.SettingsNotifications" , loader );
255+ }
256+
257+ public synchronized static Class getDataUsageActivityClass (@ NonNull ClassLoader loader ) {
258+ Class oldClass = XposedHelpers .findClassIfExists ("com.whatsapp.settings.SettingsDataUsageActivity" , loader );
259+
260+ return oldClass != null
261+ ? oldClass
262+ : XposedHelpers .findClass ("com.whatsapp.settings.ui.SettingsDataUsageActivity" , loader );
263+ }
264+
234265// public static Activity getActivityBySimpleName(String name) {
235266// for (var activity : activities) {
236267// if (activity.getClass().getSimpleName().equals(name)) {
0 commit comments