Я просматриваю платформу Xposed в Android. В частности, чтение блога - http://d3adend.org/blog/?p=589 для потенциальных контрмер и пара вопросов на этой линии.Как использовать методы привязки Xposed Framework в Android
Поэтому, когда мы используем метод Xposed, framework делает этот метод родным и выполняет код, который он хочет подключить. Итак, как это называется в исходном методе stacktrace?
com.example.hookdetection.DoStuff->getSecret //This one
de.robv.android.xposed.XposedBridge->invokeOriginalMethodNative
de.robv.android.xposed.XposedBridge->handleHookedMethod
com.example.hookdetection.DoStuff->getSecret //This one again
com.example.hookdetection.MainActivity->onCreate
android.app.Activity->performCreate
android.app.Instrumentation->callActivityOnCreate
android.app.ActivityThread->performLaunchActivity
android.app.ActivityThread->handleLaunchActivity
android.app.ActivityThread->access$800
android.app.ActivityThread$H->handleMessage
android.os.Handler->dispatchMessage
android.os.Looper->loop
android.app.ActivityThread->main
java.lang.reflect.Method->invokeNative
java.lang.reflect.Method->invoke
com.android.internal.os.ZygoteInit$MethodAndArgsCaller->run
com.android.internal.os.ZygoteInit->main
de.robv.android.xposed.XposedBridge->main
dalvik.system.NativeStart->main
Также почему это происходит дважды в стеке. Я хочу понять порядок их исполнения.
Действительно ли этот метод работает? Так как код hooked метода выполняется, он не будет идеально выполнять исходный код метода. Итак, как мы можем добавить механизм обнаружения stracktrace тем же методом, зная, что он будет заменен.
вы можете объяснить эту часть «Это длительный процесс запуска добавляет дополнительную баночку к классам и вызывает методы оттуда на определенные места "из учебника xposed. https://github.com/rovo89/XposedBridge/wiki/Development-tutorial – Suraj