Skip to content

Commit 24c16a9

Browse files
committed
Refactor AudioTranscript, Unobfuscator, and Others for improved audio handling
Signed-off-by: Dev4Mod <[email protected]>
1 parent ac447b2 commit 24c16a9

File tree

3 files changed

+5
-4
lines changed

3 files changed

+5
-4
lines changed

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

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1482,7 +1482,7 @@ public synchronized static Class getFilterView(ClassLoader loader) throws Except
14821482

14831483
public synchronized static Class loadActionUser(ClassLoader loader) throws Exception {
14841484
return UnobfuscatorCache.getInstance().getClass(loader, () -> {
1485-
for (String s : List.of("UserActions/reportIfBadTime: time=", "UserActions/createFMessageTextFromUserInputs", "UserActions/userActionKeepInChat")) {
1485+
for (String s : List.of("UserActions/userActionDeleteMessages", "UserActions/reportIfBadTime: time=", "UserActions/createFMessageTextFromUserInputs", "UserActions/userActionKeepInChat")) {
14861486
var clazz = findFirstClassUsingStrings(loader, StringMatchType.Contains, s);
14871487
if (clazz != null)
14881488
return clazz;
@@ -1533,7 +1533,7 @@ public synchronized static Method loadSendAudioTypeMethod(ClassLoader classLoade
15331533
if (!invoke.isMethod()) continue;
15341534
var m1 = invoke.getMethodInstance(classLoader);
15351535
var params = Arrays.asList(m1.getParameterTypes());
1536-
if (params.contains(List.class) && params.contains(int.class) && params.contains(boolean.class) && params.contains(Uri.class)) {
1536+
if (params.contains(List.class) && params.contains(int.class) && params.contains(Uri.class)) {
15371537
return m1;
15381538
}
15391539
}

app/src/main/java/com/wmods/wppenhacer/xposed/features/general/Others.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -476,8 +476,8 @@ protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
476476
return;
477477
}
478478
var mediaType = results.get(0);
479-
if ((int) mediaType.second != 2) return;
480479
var audioType = results.get(1);
480+
if ((int) mediaType.second != 2 && (int) mediaType.second != 9) return;
481481
param.args[audioType.first] = audio_type - 1; // 1 = voice notes || 0 = audio voice
482482
}
483483
});

app/src/main/java/com/wmods/wppenhacer/xposed/features/others/AudioTranscript.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
import com.wmods.wppenhacer.xposed.core.Feature;
88
import com.wmods.wppenhacer.xposed.core.components.FMessageWpp;
99
import com.wmods.wppenhacer.xposed.core.devkit.Unobfuscator;
10-
import com.wmods.wppenhacer.xposed.utils.DebugUtils;
1110
import com.wmods.wppenhacer.xposed.utils.ReflectionUtils;
1211

1312
import org.json.JSONObject;
@@ -50,6 +49,8 @@ protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
5049
File file = fmessage.getMediaFile();
5150
var callback = param.args[1];
5251
var onComplete = ReflectionUtils.findMethodUsingFilter(callback.getClass(), method -> method.getParameterCount() == 4);
52+
if (file == null || !file.exists())
53+
return;
5354
String transcript = runTranscript(file);
5455
var segments = new ArrayList<>();
5556
var words = transcript.split("\\s");

0 commit comments

Comments
 (0)