15
15
import com .wmods .wppenhacer .xposed .core .Utils ;
16
16
import com .wmods .wppenhacer .xposed .core .WppCore ;
17
17
18
+ import java .util .Objects ;
19
+
18
20
import de .robv .android .xposed .XC_MethodHook ;
19
21
import de .robv .android .xposed .XSharedPreferences ;
20
22
import de .robv .android .xposed .XposedBridge ;
@@ -55,19 +57,6 @@ public static void sendTaskerEvent(String number, String event) {
55
57
Utils .getApplication ().sendBroadcast (intent );
56
58
}
57
59
58
- public static class SenderMessageBroadcastReceiver extends BroadcastReceiver {
59
-
60
- @ Override
61
- public void onReceive (Context context , Intent intent ) {
62
- XposedBridge .log ("Message sent" );
63
- var number = intent .getStringExtra ("number" );
64
- var message = intent .getStringExtra ("message" );
65
- if (number == null || message == null ) return ;
66
- number = number .replaceAll ("\\ D" , "" );
67
- WppCore .sendMessage (number , message );
68
- }
69
- }
70
-
71
60
public void hookReceiveMessage () throws Throwable {
72
61
var method = Unobfuscator .loadReceiptMethod (classLoader );
73
62
var method2 = Unobfuscator .loadReceiptOutsideChat (classLoader );
@@ -88,12 +77,14 @@ protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
88
77
var messageKey = fieldMessageKey .get (fMessage );
89
78
var userJid = XposedHelpers .getObjectField (messageKey , "A00" );
90
79
var rawJid = WppCore .getRawString (userJid );
80
+ var name = WppCore .getContactName (userJid );
91
81
var number = WppCore .stripJID (rawJid );
92
82
var msg = (String ) newMessageMethod .invoke (fMessage );
93
83
if (TextUtils .isEmpty (msg ) || TextUtils .isEmpty (number )) return ;
94
84
new Handler (Utils .getApplication ().getMainLooper ()).post (() -> {
95
85
Intent intent = new Intent ("com.wmods.wppenhacer.MESSAGE_RECEIVED" );
96
86
intent .putExtra ("number" , number );
87
+ intent .putExtra ("name" , name );
97
88
intent .putExtra ("message" , msg );
98
89
Utils .getApplication ().sendBroadcast (intent );
99
90
});
@@ -102,4 +93,21 @@ protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
102
93
103
94
}
104
95
96
+ public static class SenderMessageBroadcastReceiver extends BroadcastReceiver {
97
+
98
+ @ Override
99
+ public void onReceive (Context context , Intent intent ) {
100
+ XposedBridge .log ("Message sent" );
101
+ var number = intent .getStringExtra ("number" );
102
+ if (number == null ) {
103
+ number = String .valueOf (intent .getLongExtra ("number" , 0 ));
104
+ number = Objects .equals (number , "0" ) ? null : number ;
105
+ }
106
+ var message = intent .getStringExtra ("message" );
107
+ if (number == null || message == null ) return ;
108
+ number = number .replaceAll ("\\ D" , "" );
109
+ WppCore .sendMessage (number , message );
110
+ }
111
+ }
112
+
105
113
}
0 commit comments