mirror of
https://github.com/rhunk/SnapEnhance.git
synced 2025-05-04 08:24:30 +02:00
fix(core): call recorder
Support v13.32.0.43 Signed-off-by: rhunk <101876869+rhunk@users.noreply.github.com>
This commit is contained in:
parent
c7a2d02687
commit
2ef0e54168
@ -33,7 +33,9 @@ class CallRecorder : Feature("Call Recorder") {
|
|||||||
val streamHandlers = ConcurrentHashMap<Int, MutableList<(data: ByteArray) -> Unit>>() // audioTrack -> handlers
|
val streamHandlers = ConcurrentHashMap<Int, MutableList<(data: ByteArray) -> Unit>>() // audioTrack -> handlers
|
||||||
val participants = CopyOnWriteArrayList<String>()
|
val participants = CopyOnWriteArrayList<String>()
|
||||||
|
|
||||||
findClass("com.snapchat.talkcorev3.CallingSessionState").hookConstructor(HookStage.AFTER) { param ->
|
runCatching {
|
||||||
|
findClass("com.snapchat.talkcorev3.CallingSessionState")
|
||||||
|
}.getOrNull()?.hookConstructor(HookStage.AFTER) { param ->
|
||||||
val instance = param.thisObject<Any>()
|
val instance = param.thisObject<Any>()
|
||||||
val callingState = instance.getObjectFieldOrNull("mLocalUser")?.getObjectField("mCallingState")
|
val callingState = instance.getObjectFieldOrNull("mLocalUser")?.getObjectField("mCallingState")
|
||||||
|
|
||||||
@ -41,6 +43,13 @@ class CallRecorder : Feature("Call Recorder") {
|
|||||||
participants.clear()
|
participants.clear()
|
||||||
participants.addAll((instance.getObjectField("mParticipants") as Map<*, *>).keys.map { it.toString() })
|
participants.addAll((instance.getObjectField("mParticipants") as Map<*, *>).keys.map { it.toString() })
|
||||||
}
|
}
|
||||||
|
} ?: findClass("com.snapchat.talkcorev3.TSCallingStateUpdateParams").hookConstructor(HookStage.AFTER) { param ->
|
||||||
|
val instance = param.thisObject<Any>()
|
||||||
|
|
||||||
|
if (instance.getObjectFieldOrNull("mInCall") == true) {
|
||||||
|
participants.clear()
|
||||||
|
participants.addAll((instance.getObjectField("mParticipants") as Set<*>).map { it.toString() })
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
AudioTrack::class.java.apply {
|
AudioTrack::class.java.apply {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user