x1ongzhu 1 year ago
parent
commit
af3d22bda9
1 changed files with 50 additions and 0 deletions
  1. 50 0
      scripts/spoof_phone3.js

+ 50 - 0
scripts/spoof_phone3.js

@@ -0,0 +1,50 @@
+class Log {
+    static TAG = '[Phone]'
+    static Debug = true
+    static format(...msg) {
+        let m = []
+        for (let i = 0; i < msg.length; i++) {
+            if (typeof msg[i] === 'object') {
+                m.push(JSON.stringify(msg[i]))
+            } else {
+                m.push(msg[i])
+            }
+        }
+        m = m.join(' ')
+        return m
+    }
+    static i(...msg) {
+        if (!this.Debug) return
+        console.log(`\x1b[30m${this.TAG} ${this.format(...msg)}\x1b[0m`)
+    }
+    static w(...msg) {
+        console.log(`\x1b[33m${this.TAG} ${this.format(...msg)}\x1b[0m`)
+    }
+    static e(...msg) {
+        console.log(`\x1b[31m${this.TAG} ${this.format(...msg)}\x1b[0m`)
+    }
+    static s(...msg) {
+        console.log(`\x1b[32m${this.TAG} ${this.format(...msg)}\x1b[0m`)
+    }
+}
+
+function trace(tag) {
+    Log.e((tag || '') + Java.use('android.util.Log').getStackTraceString(Java.use('java.lang.Throwable').$new()))
+}
+
+setImmediate(() => {
+    Java.perform(function () {
+        const SubscriptionController = Java.use('com.android.internal.telephony.SubscriptionController')
+        SubscriptionController.getSubscriptionInfo.overload('int').implementation = function (slotIndex) {
+            Log.e('getSubscriptionInfo()')
+            return this.getSubscriptionInfo(slotIndex)
+        }
+        SubscriptionController.getActiveSubscriptionInfoList.overload(
+            'java.lang.String',
+            'java.lang.String'
+        ).implementation = function (callingPackage, callingFeature) {
+            Log.e(`getActiveSubscriptionInfoList(${callingPackage}, ${callingFeature})`) 
+            return this.getActiveSubscriptionInfoList(callingPackage, callingFeature)
+        }
+    })
+})