@@ -34,13 +34,14 @@ class VolumeControlModule : IXposedHookLoadPackage {
3434 }
3535
3636 private val initMethodSignatures = mapOf (
37- // Android 14 & 15 signature
37+ // Android 14, 15 and 16 signature
3838 // https://android.googlesource.com/platform/frameworks/base/+/refs/tags/android-14.0.0_r18/services/core/java/com/android/server/policy/PhoneWindowManager.java#2033
3939 // https://android.googlesource.com/platform/frameworks/base/+/refs/heads/android15-release/services/core/java/com/android/server/policy/PhoneWindowManager.java#2199
40+ // https://android.googlesource.com/platform/frameworks/base/+/refs/heads/android16-release/services/core/java/com/android/server/policy/PhoneWindowManager.java#2359
4041 arrayOf(
4142 Context ::class .java,
4243 CLASS_WINDOW_MANAGER_FUNCS
43- ) to " Using Android 14 or 15 method signature" ,
44+ ) to " Using Android 14, 15 or 16 method signature" ,
4445
4546 // Android 13 signature
4647 // https://android.googlesource.com/platform/frameworks/base/+/refs/heads/android13-dev/services/core/java/com/android/server/policy/PhoneWindowManager.java#1873
@@ -59,13 +60,13 @@ class VolumeControlModule : IXposedHookLoadPackage {
5960 )
6061
6162 private fun init (classLoader : ClassLoader ) {
62- val foundMethod = initMethodSignatures.any { (params, logMessage) ->
63- tryHookMethod (classLoader, params, logMessage)
64- }
65-
66- if ( ! foundMethod) {
67- log( " Method hook failed for init! " )
68- return
63+ initMethodSignatures.any { (params, logMessage) ->
64+ tryHookInitMethod (classLoader, params, logMessage)
65+ }. also { hooked ->
66+ if ( ! hooked) {
67+ log( " Method hook failed for init! " )
68+ return
69+ }
6970 }
7071
7172 // https://android.googlesource.com/platform/frameworks/base/+/refs/tags/android-14.0.0_r18/services/core/java/com/android/server/policy/PhoneWindowManager.java#4117
@@ -79,7 +80,7 @@ class VolumeControlModule : IXposedHookLoadPackage {
7980 )
8081 }
8182
82- private fun tryHookMethod (
83+ private fun tryHookInitMethod (
8384 classLoader : ClassLoader ,
8485 params : Array <Serializable >,
8586 logMessage : String
@@ -91,7 +92,7 @@ class VolumeControlModule : IXposedHookLoadPackage {
9192 )
9293 log(logMessage)
9394 true
94- } catch (ignored : NoSuchMethodError ) {
95+ } catch (_ : NoSuchMethodError ) {
9596 false
9697 }
9798 }
0 commit comments