| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- const mcc = '255'
- const mnc = '06'
- const simOperator = '25506'
- const networkOperator = '25506'
- const simSerialNumber = '52463878170561652433'
- const iccId = '52463878170561652433'
- const number = '739727133'
- const imei = '352260057378931'
- const imsi = '255064887029478'
- const countryIso = 'ua'
- const subId = '59'
- const androidId = '50b4577c46ef5e96'
- const serialNumber = '1955b056'
- function trace(tag) {
- Log.e((tag || '') + Java.use('android.util.Log').getStackTraceString(Java.use('java.lang.Throwable').$new()))
- }
- function dump(obj) {
- try {
- const gson = Java.use('com.google.gson.Gson').$new()
- const json = gson.toJson(obj)
- return json
- } catch (error) {
- return ''
- }
- }
- function dumpJson(obj) {
- try {
- const gson = Java.use('com.google.gson.Gson').$new()
- const json = gson.toJson(obj)
- return JSON.parse(json)
- } catch (error) {
- return ''
- }
- }
- class Log {
- static TAG = '[GMS]'
- static Debug = false
- static format(...msg) {
- let m = []
- for (let i = 0; i < msg.length; i++) {
- if (typeof msg[i] === 'object') {
- m.push(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`)
- }
- }
- Java.perform(function () {
- try {
- const GsonClass = Java.openClassFile('/sdcard/Android/data/com.google.android.gms/gson.dex')
- GsonClass.load()
- Log.s('gson class loaded')
- } catch (error) {
- Log.e('load gson error', error)
- }
- })
|