Skip to content

Commit 66d1684

Browse files
authored
Merge pull request #115 from frknkrc44/master
feat: Add 2.24.18.xx support
2 parents 2ec6a83 + 6badeab commit 66d1684

File tree

3 files changed

+15
-6
lines changed

3 files changed

+15
-6
lines changed

app/src/main/java/com/wmods/wppenhacer/xposed/core/devkit/Unobfuscator.java

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -209,7 +209,8 @@ public synchronized static Method loadForwardTagMethod(ClassLoader classLoader)
209209
for (var invoke : invokes) {
210210
var method = invoke.getMethodInstance(classLoader);
211211
if (method.getParameterCount() == 1
212-
&& method.getParameterTypes()[0] == int.class
212+
&& (method.getParameterTypes()[0] == int.class
213+
|| method.getParameterTypes()[0] == long.class)
213214
&& method.getDeclaringClass() == messageInfoClass
214215
&& method.getReturnType() == void.class) {
215216
return method;
@@ -278,7 +279,7 @@ public synchronized static Method loadTabListMethod(ClassLoader classLoader) thr
278279

279280
public synchronized static Method loadGetTabMethod(ClassLoader classLoader) throws Exception {
280281
return UnobfuscatorCache.getInstance().getMethod(classLoader, () -> {
281-
Method result = findFirstMethodUsingStringsFilter(classLoader, "X.", StringMatchType.Contains, "Invalid tab id: 600");
282+
Method result = findFirstMethodUsingStringsFilter(classLoader, "X.", StringMatchType.Contains, "No HomeFragment mapping for community tab id:");
282283
if (result == null) throw new Exception("GetTab method not found");
283284
return result;
284285
});
@@ -498,7 +499,7 @@ public synchronized static Method loadStatusActivePage(ClassLoader classLoader)
498499

499500
public synchronized static Class<?> loadStatusDownloadMediaClass(ClassLoader classLoader) throws Exception {
500501
return UnobfuscatorCache.getInstance().getClass(classLoader, () -> {
501-
var clazz = findFirstClassUsingStrings(classLoader, StringMatchType.Contains, "FMessageVideo/Cloned");
502+
var clazz = findFirstClassUsingStrings(classLoader, StringMatchType.Contains, "static.whatsapp.net/downloadable?category=PSA");
502503
if (clazz == null) throw new Exception("StatusDownloadMedia class not found");
503504
return clazz;
504505
});
@@ -1428,8 +1429,15 @@ public synchronized static Field loadOriginFMessageField(ClassLoader classLoader
14281429

14291430
public synchronized static Method loadForwardAudioTypeMethod(ClassLoader classLoader) throws Exception {
14301431
return UnobfuscatorCache.getInstance().getMethod(classLoader, () -> {
1431-
var result = findFirstMethodUsingStrings(classLoader, StringMatchType.Contains, "forwardable", "FMessageFactory/newFMessageForForward/thumbnail");
1432-
if (result == null) throw new RuntimeException("ForwardAudioType method not found");
1432+
var results = findAllMethodUsingStrings(classLoader, StringMatchType.Contains, "FMessageFactory/newFMessageForForward/thumbnail");
1433+
if (results == null || results.length < 1) throw new RuntimeException("ForwardAudioType method not found");
1434+
Method result;
1435+
if (results.length > 1) {
1436+
result = findFirstMethodUsingStrings(classLoader, StringMatchType.Contains, "forwardable", "FMessageFactory/newFMessageForForward/thumbnail");
1437+
} else {
1438+
// 2.24.18.xx returns one method
1439+
result = results[0];
1440+
}
14331441
return result;
14341442
});
14351443
}

app/src/main/java/com/wmods/wppenhacer/xposed/features/privacy/HideTagForward.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ public void doHook() throws Exception {
2828
@Override
2929
protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
3030
if (!prefs.getBoolean("hidetag", false)) return;
31-
var arg = (int) param.args[0];
31+
var arg = (long) param.args[0];
3232
if (arg == 1) {
3333
if (ReflectionUtils.isCalledFromClass(forwardClass)) {
3434
param.args[0] = 0;

app/src/main/res/values/arrays.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,6 +120,7 @@
120120
<item>2.24.15.xx</item>
121121
<item>2.24.16.xx</item>
122122
<item>2.24.17.xx</item>
123+
<item>2.24.18.xx</item>
123124
</string-array>
124125
<string-array name="supported_versions_business">
125126
<item>2.24.12.xx</item>

0 commit comments

Comments
 (0)