2016-11-16 84 views
-1

正如你可以看到下面,當我們使用此代碼Xposed - 如何掛鉤Date類的Android

Date date = new Date(); 
System.out.print("Due date:", date); 

現在我怎樣才能顯示結果之前更改日期獲取日期,因爲它不使用任何方法使如何鉤上面的東西?

有什麼辦法可以用xpose鉤子模塊鉤住這個來改變結果嗎?

+0

我不確定我是否理解了這個問題,但是您可以通過'Date date = new Date(12345)'來設置具體的日期;'其中12345是milis中1970年1月1日以後的時間。 – Micer

+0

你好我正在談論xpose鉤子,沒有設置時間 – AndroidBeginnerJhon

+0

Date類有setMinute,setHour,setMinutes方法。您應該勾選這些方法,以便更改日期的時間部分。日期還有一個你可以掛鉤的setTime(long)方法。如果你需要鉤住'new Date()',你可以掛鉤你可以調用setter方法 –

回答

1

您的假設「它不使用任何方法」是根本錯誤的。 你的示例代碼使用兩個「方法」,可以通過Xposed鉤住:

第一個「方法」是Date()構造函數。您可以使用XposedHelpers.findAndHookConstructor(..)掛鉤它。在afterHookedMethod(..)中,您可以修改日期對象。

第二種方法是Date.toString()。它是一個常規的構造函數,可以像任何其他方法一樣掛鉤。

+0

的構造函數,謝謝你,我需要的是finandhookconstructor,我不知道爲什麼有人評價它-1,但我的應用程序試圖鉤住簡單的用法date = new date();並在稍後使用simpledateformat以及我知道我可以像簡單日期格式或date.tostring中的解析方法(可以掛鉤tostring),但我看到的是構造函數 – AndroidBeginnerJhon