Skip to content

Commit a687787

Browse files
committed
refactor(ContactVerify): load profile photo protocol helper class via Unobfuscator
1 parent 2f774d5 commit a687787

2 files changed

Lines changed: 13 additions & 2 deletions

File tree

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

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3402,4 +3402,14 @@ object Unobfuscator {
34023402
}
34033403
}
34043404

3405+
fun loadProfilePhotoProtocolHelperClass(classLoader: ClassLoader): Class<*> {
3406+
return UnobfuscatorCache.getInstance().getClass(classLoader) {
3407+
bridge.findClass {
3408+
matcher {
3409+
usingStrings("ProfilePhotoManager/sendGetSubProfilePhoto")
3410+
}
3411+
}.single().getInstance(classLoader)
3412+
}
3413+
}
3414+
34053415
}

app/src/main/java/com/wmods/wppenhacer/xposed/features/customization/ContactVerify.kt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package com.wmods.wppenhacer.xposed.features.customization
22

33
import android.annotation.SuppressLint
44
import android.app.Activity
5+
import android.content.SharedPreferences
56
import android.graphics.Color
67
import android.text.TextUtils
78
import android.view.ViewGroup
@@ -15,7 +16,6 @@ import com.wmods.wppenhacer.xposed.utils.DesignUtils
1516
import com.wmods.wppenhacer.xposed.utils.ReflectionUtils
1617
import com.wmods.wppenhacer.xposed.utils.Utils
1718
import de.robv.android.xposed.XC_MethodHook
18-
import android.content.SharedPreferences
1919
import de.robv.android.xposed.XposedBridge
2020
import java.util.concurrent.CompletableFuture
2121
import java.util.concurrent.atomic.AtomicReference
@@ -51,7 +51,8 @@ class ContactVerify(loader: ClassLoader, preferences:SharedPreferences) :
5151

5252
val sendGetProfilePhoto = Unobfuscator.loadGetProfilePhoto(classLoader)
5353
state.sendGetProfilePhoto = sendGetProfilePhoto
54-
val profilePhotoProtocolHelper = sendGetProfilePhoto.constructors[0].parameterTypes[2]
54+
val profilePhotoProtocolHelper =
55+
Unobfuscator.loadProfilePhotoProtocolHelperClass(classLoader)
5556
initProfilePhotoProtocolHooks(profilePhotoProtocolHelper)
5657
val dialerProfilePictureLoader = Unobfuscator.loadDialerProfilePictureLoader(classLoader)
5758
initProfilePhotoCallbacks(dialerProfilePictureLoader)

0 commit comments

Comments
 (0)