r0ysue / r0tracer

安卓Java层多功能追踪脚本
661 stars 212 forks source link

traceClass过程异常了 #7

Open df13954 opened 1 year ago

df13954 commented 1 year ago

环境:AOSP 10,pixel 3,frida 14.x 使用traceClass方式

触发逻辑后控制台报错了,APP的业务也没有继续执行。

*** entered com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment.a
arg[0]: com.leo.demo.jsbridge.entity.request.HttpRequest@c37f13e => "<instance: com.leo.demo.jsbridge.entity.request.BaseSDKRequest, $className: com.leo.demo.jsbridge.entity.request.HttpRequest>"
arg[1]: [object Object] => "<instance: com.leo.demo.jsbridge.main.c, $className: com.leo.demo.jsbridge.main.BridgeWebView$1>"
java.lang.Throwable
    at com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment.a(Native Method)
    at com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment.a(Native Method)
    at com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment$78.b(SourceFile:1316)
    at com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment$78.J(SourceFile:1312)
    at eu.a.a(SourceFile:39)
    at com.leo.demo.jsbridge.main.BridgeWebView.ni(SourceFile:189)
    at com.leo.demo.jsbridge.main.BridgeWebView.c(SourceFile:48)
    at com.leo.demo.jsbridge.main.BridgeWebView$b.handleMessage(SourceFile:431)
    at android.os.Handler.dispatchMessage(Handler.java:107)
    at android.os.Looper.loop(Looper.java:214)
    at android.app.ActivityThread.main(ActivityThread.java:7374)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)

retval: com.leo.demo.jsbridge.entity.result.APPUUIDResult@32954ec => "<instance: com.leo.demo.jsbridge.entity.result.BaseSDKResult, $className: com.leo.demo.jsbridge.entity.result.APPUUIDResult>"
*** exiting com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment.a
========================================================================================================================================================================================================Inspecting Fields: => true => class com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment
java.lang.String    TAG => SDKWebViewFragment => "SDKWebViewFragment"
com.leo.demo.tools.utils.a  bLI => com.leo.demo.tools.utils.a@15b3c57 => "<instance: com.leo.demo.tools.utils.a>"
io.reactivex.disposables.CompositeDisposable    bLS => io.reactivex.disposables.CompositeDisposable@2856344 => "<instance: io.reactivex.disposables.CompositeDisposable>"
android.bluetooth.BluetoothGatt     brV => null => null
java.util.List  btm => [object Object] => "<instance: java.util.List, $className: java.util.ArrayList>"
java.lang.String    cac => DL-D5F => "DL-D5F"
java.lang.String    ced => /storage/emulated/0/Deli/files/ => "/storage/emulated/0/Deli/files/"
com.leo.demo.deiui.feedback.dialog.DeiUiDialogFragment  cjU => null => null
java.util.Map   cjW => [object Object] => "<instance: java.util.Map, $className: java.util.HashMap>"
android.net.Uri     ckC => null => null
com.leo.demo.jsbridge.main.BridgeWebView    ckD => com.leo.demo.jsbridge.main.BridgeWebView{4f86055 VFED..C.. ........ 0,0-806,723 #7f090267 app:id/fragment_web_view} => "<instance: com.leo.demo.jsbridge.main.BridgeWebView>"
com.leo.demo.jsbridge.entity.SDKWebViewRequestData  ckE => com.leo.demo.jsbridge.entity.SDKWebViewRequestData@6318598 => "<instance: com.leo.demo.jsbridge.entity.SDKWebViewRequestData>"
java.util.HashMap   ckF => {eplus.user.get=com.leo.demo.jsbridge.main.BridgeWebView$1@6fb6a53, eplus.data.global=com.leo.demo.jsbridge.main.BridgeWebView$1@5c4d8b6, tool.storage.get=com.leo.demo.jsbridge.main.BridgeWebView$1@61fbc45, tool.http.request=com.leo.demo.jsbridge.main.BridgeWebView$1@2cbbdf9} => "<instance: java.util.HashMap>"
boolean     ckL => false => false
java.util.List  ckM => null => null
long    ckN => 0 => "0"
int     ckO => 0 => 0
com.clj.fastble.data.BleDevice  ckP => null => null
java.util.List  ckQ => null => null
long    ckR => 0 => "0"
int     ckS => 0 => 0
com.leo.demo.jsbridge.main.BridgeWebView$a  ckT => com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment$42@adfaff8 => "<instance: com.leo.demo.jsbridge.main.BridgeWebView$a, $className: com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment$42>"
boolean     ckV => true => true
boolean     ckW => false => false
java.lang.Integer   ckX => null => null
java.lang.Integer   ckY => null => null
int     ckZ => 1 => 1
cb.i    clb => com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment$30@1a22c2d => "<instance: cb.i, $className: com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment$30>"
boolean     clu => true => true
com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment$a  clv => null => null
boolean     $assertionsDisabled => undefined => undefined
int     caQ => 10 => 10
int     cjJ => 5 => 5
int     ckA => 4 => 4
int     ckx => 3 => 3
int     cky => 1 => 1
int     ckz => 2 => 2
[native     function h() {
    [native code]
} => undefined => undefined

*** entered com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment.a
arg[0]: com.leo.demo.jsbridge.entity.request.HttpRequest@c37f13e => "<instance: com.leo.demo.jsbridge.entity.request.HttpRequest>"
arg[1]: [object Object] => "<instance: com.leo.demo.jsbridge.main.c, $className: com.leo.demo.jsbridge.main.BridgeWebView$1>"
java.lang.Throwable
    at com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment.a(Native Method)
    at com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment$78.b(SourceFile:1316)
    at com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment$78.J(SourceFile:1312)
    at eu.a.a(SourceFile:39)
    at com.leo.demo.jsbridge.main.BridgeWebView.ni(SourceFile:189)
    at com.leo.demo.jsbridge.main.BridgeWebView.c(SourceFile:48)
    at com.leo.demo.jsbridge.main.BridgeWebView$b.handleMessage(SourceFile:431)
    at android.os.Handler.dispatchMessage(Handler.java:107)
    at android.os.Looper.loop(Looper.java:214)
    at android.app.ActivityThread.main(ActivityThread.java:7374)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)

retval: com.leo.demo.jsbridge.entity.result.APPUUIDResult@32954ec => "<instance: com.leo.demo.jsbridge.entity.result.BaseSDKResult, $className: com.leo.demo.jsbridge.entity.result.APPUUIDResult>"
*** exiting com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment.a
========================================================================================================================================================================================================Inspecting Fields: => true => class com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment
java.lang.String    TAG => SDKWebViewFragment => "SDKWebViewFragment"
com.leo.demo.tools.utils.a  bLI => com.leo.demo.tools.utils.a@15b3c57 => "<instance: com.leo.demo.tools.utils.a>"
io.reactivex.disposables.CompositeDisposable    bLS => io.reactivex.disposables.CompositeDisposable@2856344 => "<instance: io.reactivex.disposables.CompositeDisposable>"
android.bluetooth.BluetoothGatt     brV => null => null
java.util.List  btm => [object Object] => "<instance: java.util.List, $className: java.util.ArrayList>"
java.lang.String    cac => DL-D5F => "DL-D5F"
java.lang.String    ced => /storage/emulated/0/Deli/files/ => "/storage/emulated/0/Deli/files/"
com.leo.demo.deiui.feedback.dialog.DeiUiDialogFragment  cjU => null => null
java.util.Map   cjW => [object Object] => "<instance: java.util.Map, $className: java.util.HashMap>"
android.net.Uri     ckC => null => null
com.leo.demo.jsbridge.main.BridgeWebView    ckD => com.leo.demo.jsbridge.main.BridgeWebView{4f86055 VFED..C.. ........ 0,0-806,723 #7f090267 app:id/fragment_web_view} => "<instance: com.leo.demo.jsbridge.main.BridgeWebView>"
com.leo.demo.jsbridge.entity.SDKWebViewRequestData  ckE => com.leo.demo.jsbridge.entity.SDKWebViewRequestData@6318598 => "<instance: com.leo.demo.jsbridge.entity.SDKWebViewRequestData>"
java.util.HashMap   ckF => {eplus.user.get=com.leo.demo.jsbridge.main.BridgeWebView$1@6fb6a53, eplus.data.global=com.leo.demo.jsbridge.main.BridgeWebView$1@5c4d8b6, tool.storage.get=com.leo.demo.jsbridge.main.BridgeWebView$1@61fbc45, tool.http.request=com.leo.demo.jsbridge.main.BridgeWebView$1@2cbbdf9} => "<instance: java.util.HashMap>"
boolean     ckL => false => false
java.util.List  ckM => null => null
long    ckN => 0 => "0"
int     ckO => 0 => 0
com.clj.fastble.data.BleDevice  ckP => null => null
java.util.List  ckQ => null => null
long    ckR => 0 => "0"
int     ckS => 0 => 0
com.leo.demo.jsbridge.main.BridgeWebView$a  ckT => com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment$42@adfaff8 => "<instance: com.leo.demo.jsbridge.main.BridgeWebView$a, $className: com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment$42>"
boolean     ckV => true => true
boolean     ckW => false => false
java.lang.Integer   ckX => null => null
java.lang.Integer   ckY => null => null
int     ckZ => 1 => 1
cb.i    clb => com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment$30@1a22c2d => "<instance: cb.i, $className: com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment$30>"
boolean     clu => true => true
com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment$a  clv => null => null
boolean     $assertionsDisabled => undefined => undefined
int     caQ => 10 => 10
int     cjJ => 5 => 5
int     ckA => 4 => 4
int     ckx => 3 => 3
int     cky => 1 => 1
int     ckz => 2 => 2
[native     function h() {
    [native code]
} => undefined => undefined

*** entered com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment.b
arg[0]: com.leo.demo.jsbridge.entity.request.BaseSDKRequest@23de34a => "<instance: com.leo.demo.jsbridge.entity.request.BaseSDKRequest>"
arg[1]: [object Object] => "<instance: com.leo.demo.jsbridge.main.c, $className: com.leo.demo.jsbridge.main.BridgeWebView$1>"
java.lang.Throwable
    at com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment.b(Native Method)
    at com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment$53.J(SourceFile:854)
    at eu.a.a(SourceFile:39)
    at com.leo.demo.jsbridge.main.BridgeWebView.ni(SourceFile:189)
    at com.leo.demo.jsbridge.main.BridgeWebView.c(SourceFile:48)
    at com.leo.demo.jsbridge.main.BridgeWebView$b.handleMessage(SourceFile:431)
    at android.os.Handler.dispatchMessage(Handler.java:107)
    at android.os.Looper.loop(Looper.java:214)
    at android.app.ActivityThread.main(ActivityThread.java:7374)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)

retval: com.leo.demo.jsbridge.entity.result.PhoneInfoResult@2ccd3d8 => "<instance: com.leo.demo.jsbridge.entity.result.BaseSDKResult, $className: com.leo.demo.jsbridge.entity.result.PhoneInfoResult>"
*** exiting com.leo.demo.jsbridge.ui.fragment.SDKWebViewFragment.b
r0ysue commented 1 year ago

报错信息是啥?