2016-04-20 163 views
0

我正在使用Xposed模塊來分析一個android應用程序,並且我試圖掛鉤一個聲明爲private的構造函數,但它無法找到該類。是因爲構造函數是私有的還是存在另一個問題?構造函數是:private CalendarContractCompat() {}。我的鉤碼是:Xposed - 掛鉤私人構造函數

findAndHookConstructor("com.android.calendar.CalendarContractCompat", lpparam.classLoader, new XC_MethodHook() { 

在此先感謝!

回答

0

根據xposed橋源(https://github.com/rovo89/XposedBridge/blob/art/app/src/main/java/de/robv/android/xposed/XposedHelpers.java),findAndHookConstructor調用getDeclaredConstructor並將其結果設置爲可訪問。這意味着該函數應該適用於任何構造函數,公共或不公開。

你可以掛鉤同一類的公共方法嗎?

+0

你能夠鉤住私人構造函數嗎? Xposed是拋出了一個ClassNotFound錯誤,雖然我正如我爲公共構造函數一樣掛鉤它。 – Erin

+0

不幸的是,我所分析的類只包含私有構造函數,對於主類和兩個嵌套類,就方法而言。父類被聲明爲final - 是否會產生影響?兩個嵌套類聲明爲靜態最終。 – Erin