| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- 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)
- }
- })
- })
|